0
我已經在python 3.5上製作了一個程序,您可以找到鏈接到用戶名的密碼,爲現有用戶創建一個新密碼,並向該用戶添加一個新密碼字典然後pickles它,所以每次我加載程序所有的用戶名和密碼將在那裏。'AttributeError:'當我試圖取出字典時
,來了的錯誤是你創建的鹹菜文件,然後在第6行錯誤
AttributeError: Can't get attribute 'NewPass' on <module '__main__' (built-in)>
發生(運行它的第一次後)。
這裏是我的腳本:
import sys
import pickle
import os
if os.path.exists("branston.p"):
LOGG = pickle.load(open('branston.p', 'rb'))
else:
LOGG = {'Sam': ('CHRIST')}
def Find():
Username = input("Say a Username.")
print (LOGG[Username])
def NewPass():
Username = Input("Enter your username.")
Newpass = input("Enter your new password")
if NewPass == input("Confirm password"):
LOGG[Username] = (NewPass)
def NewEntry():
NewUser = input("Enter your new username.")
Newpass = input("Enter your new password.")
LOGG[NewUser] = (NewPass)
loop = True
while loop == True:
function = input("Say what you want me to do.'Find', 'NewPass', 'NewEntry', 'Stop'.")
if function == ("Find"):
Find()
elif function == ("NewPass"):
NewPass()
elif function == ("NewEntry"):
NewEntry()
elif function == ("Stop"):
f = open('branston.p', 'wb')
pickle.dump(LOGG, f)
f.close()
sys.exit()
任何幫助,將不勝感激。謝謝!
Python區分大小寫。 「Newpass」與「NewPass」不同。 – Kevin
不要將您的變量命名爲您的函數。它看起來像你醃一個功能。 – zvone
請查看[PEP8](https://www.python.org/dev/peps/pep-0008/)。通過適當的命名約定,這個錯字很容易被發現。 – MisterMiyagi