我在python中得到一個屬性錯誤,但我已經導入了我需要的所有東西。這是令人困惑的,因爲這似乎合乎邏輯,這將工作沒有任何事情或秩序,我不認爲,雖然我是說來自java背景。屬性錯誤來自一個新文件的Python
這是在一個叫做utils.py
import runMain
def isUser(credentialsInput):
return credentialsInput in runMain.users
def isReserved(names):
for strings in runMain.roomName:
if names in strings:
return True
else:
return False
def getIndex(e, check):
return e.index(check)
def findInArray(e, searchName):
runMain.i = 0
while runMain.i < len(e):
test = e[runMain.i]
if searchName in test:
break
return runMain.i
def registerUser(creds):
runMain.users.__add__(len(runMain.users), creds)
def runCredentialCheck():
runMain.username = input("admin$ -u>>> ")
runMain.password = input("admin$ -p>>> ")
runMain.credentials = runMain.username + ":" + runMain.password
return isUser(runMain.credentials)
文件我有一個名爲runMain在那裏我有以下代碼另一個文件:
import utils
import sys
TOTAL_ROOMS = 500
rooms = []
suite = []
reservations = []
reservationParts = []
roomNum = 0
suiteOut = ""
suiteF = ""
name = ""
userInput = ""
suiteT = " and is a suite"
utils.users.append("foo:hello")
userInput = input(">>> ")
while True:
if userInput == "new -r":
utils.username = input("admin$ -u>>> ")
utils.password = input("admin$ -p>>> ")
utils.credentials = utils.username + ":" + utils.password
if utils.isUser(credentialsInput=utils.credentials):
userInput = input("rsr# -n ")
reservationParts = userInput.split()
roomNum = reservationParts[0]
name = reservationParts[1]
if name in rooms:
print(">>> Room is occupied")
elif name in utils.roomName:
print(">>> Room is occupied")
rooms.append(roomNum)
utils.roomName.append(name)
utils.loopCount = 0
if "--suite" in userInput:
suite.append(True)
suiteOut = suiteT
else:
suite.append(False)
suiteOut = suiteF
reservations.append("Room " + roomNum + " is filled by " +
utils.roomName.__getitem__(utils.loopCount) + suiteOut)
for ints in rooms:
if suite.__getitem__(utils.loopCount):
suiteOut = suiteT
else:
suiteOut = suiteF
sys.stdout.write("Room " + ints + " is filled by " +
utils.roomName.__getitem__(utils.loopCount) + suiteOut)
print()
utils.loopCount += 1
userInput = input(">>> ")
if userInput == "quit()":
break
else:
print("Invalid Credentials")
elif userInput == "new -u":
if utils.runCredentialCheck():
utils.username = input("new -u -u>>> ")
utils.password = input("new -u -p>>> ")
utils.registerUser(creds=(utils.username + ":" + utils.password))
else:
print("Invalid Credentials")
userInput = input(">>> ")
我不知道我在做什麼錯誤。我收到錯誤: AttributeError:模塊'utils'沒有屬性'runCredentialCheck'。
從何處導入'utils'? – AetherUnbound
utils是一個文件,它被導入到runMain文件 –
那麼你的問題不是'runMain'導入,而是'utils'導入。你可以發佈'utils'的內容嗎? – AetherUnbound