【发布时间】:2015-09-29 07:57:52
【问题描述】:
基于程序。它可以保存文件取决于用户输入的用户名。由于用户名已经存在,如何让程序要求用户更改为其他用户名。
while True:
RegOrLog = raw_input('[Register/Login]:')
if RegOrLog not in ('reg', 'register', 'REGISTER','log', 'login', 'LOGIN',\
'r','l'):
print "Please enter 'register' if you dont have account"
print "Please enter 'login' if you already registered"
if RegOrLog in ('reg', 'register', 'REGISTER','r','Register'):
count = 0
while count < 1:
regusrnm = raw_input('Enter your desire login name:')
regusrnm = regusrnm.lower()
regpswrd = raw_input('Enter your password:')
while True:
regage = raw_input('Enter your age:')
if int(regage) not in range(1, 100):
print 'please enter apropriate value'
else:
break
while True:
reggender = raw_input('State your gender:')
if reggender not in ('male', 'female'):
print 'Are you an alien?'
else:
break
data = {"username": regusrnm, "password": regpswrd, "age": regage,\
"gender": reggender}
pickle.dump( data, open( regusrnm, "wb" ) )
RegOrLog = 'login'
print 'Please login to your account for security purpose'
break
if RegOrLog in ('log', 'login', 'LOGIN','l','Login'):
logusrnm = raw_input('Enter your username:')
data = pickle.load( open( logusrnm, "rb" ) )
count = 3
while count >= 1:
logpswrd = raw_input('Enter your password:')
count = count - 1
if logpswrd != data["password"]:
print "You have",count, "attempt left"
if count == 0:
print "The account doesn't exist or wrong password"
print 'Please register a new one'
break
else:
print 'Welcome Back',data["username"]
break
以及如何将保存文件存储在文件夹中,以免弄乱。喜欢它干净整洁:D
【问题讨论】:
标签: python-2.7 save file-exists