Python学習心得:辞書インデックスの適用+入力エラー値再入力サイクル最適化+終了関数のreturnとexit()の違いについて
2679 ワード
今日はこんなに長いコードを書くのは初めて(自分にとっては・・・)、多くの問題が反映されていますが、収益もたくさんあります.
注意すべき点
干すのは自分の向上のためであり、縁鳥(縁のある同鳥(同じ菜鳥の大触たち))のためでもある.
注意すべき点
干すのは自分の向上のためであり、縁鳥(縁のある同鳥(同じ菜鳥の大触たち))のためでもある.
userDATA = {' ': '123123'}
def new2build():
name = input(' : ')
if name in userDATA:
while 1:
name2 = input(' , : ')
if name2 in userDATA:
continue
else:
key2 = input(' : ')
userDATA[name2] = key2
print(' !')
break
else:
key = input(' : ')
userDATA[name] = key
print(' !')
def reg2sys():
regname = input(' : ')
if regname in userDATA:
regkey = input(' : ')
if regkey == userDATA.get(regname): # .get .values
print(' !')
else:
while 1:
regkey4 = input(' , : ')
if regkey4 == userDATA.get(regname):
print(' !')
exit() # return, return , sysmenu() !!!
else:
continue
else:
regname2 = input(' : ')
while 1:
if regname2 in userDATA:
regkey2 = input(' : ')
if regkey2 == userDATA.get(regname2):
print(' !')
exit()
else:
while 1:
regkey3 = input(' , : ')
if regkey3 == userDATA.get(regname2):
print(' !')
exit()
else:
continue
else:
regname2 = input(' : ')
continue
def sysmenu(): # , , , !!!!!!!
prompt = (
'''--- : N/n ---
--- : E/e ---
--- : Q/q ---
--- : ''')
while True:
chosen = False
while not chosen:
choice = input(prompt)
if choice not in 'NnEeQq':
print(' , : ')
else:
chosen = True
if choice == 'q' or choice == 'Q':
return # exit()
if choice == 'n' or choice == 'N':
new2build()
if choice == 'e' or choice == 'E':
reg2sys()
sysmenu()