|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
画框的这段代码是照着小甲鱼老师在41讲习题答案(https://fishc.com.cn/thread-206416-1-2.html)里敲的,但是还是报了缩进错误,重新敲了还是报错。不知道是为什么
- import hashlib
- print("欢迎来到鱼C论坛~")
- print("=====================")
- print("""1.注册
- 2.登陆
- 3.退出
- """)
- ku={"2":"ddd",3:222}
- def get_int():
- a=int(input("请输入指令:"))
- if a==1:
- register()
- if a==2:
- login()
- if a==3:
- def encrypt(plaintext):
- bstr=bytes(plaintext,"utf-8")
- ciphertext=hashlib.md5(bstr).hexdigest()
- return ciphertext
-
- def register():
- re_name=input("请输入用户名:")
- while re_name in ku.keys():
- print("该用户已注册")
- re_name=input("请输入用户名:")
-
- re_password=input("请输入密码:")
- re_password=encrypt(re_password)
- ku[re_name]=re_password
- print("恭喜,注册成功")
- def login():
- name=input("请输入用户名:")
- while name not in ku.keys():
- print("该用户不存在")
- name=input("请重新输入用户名:")
- password=input("请输入密码:")
- while ku.get(name)!=encrypt(password):
- print("密码错误")
- password=input("请重新输入密码:")
-
- print("登陆成功")
复制代码
你的代码主要有两个问题。首先,if后面需要有else或elif语句,这样如果没有满足if条件的话,程序会知道该执行什么操作。其次,你需要在 if a==3: 语句后面添加一个操作。如果你想让程序在输入3时退出,你可以使用 sys.exit() 函数。
下面是修改后的代码:
- import hashlib
- import sys
- print("欢迎来到鱼C论坛~")
- print("=====================")
- print("""1.注册
- 2.登陆
- 3.退出
- """)
- ku={"2":"ddd",3:222}
- def get_int():
- a=int(input("请输入指令:"))
- if a==1:
- register()
- elif a==2:
- login()
- elif a==3:
- sys.exit()
- def encrypt(plaintext):
- bstr=bytes(plaintext,"utf-8")
- ciphertext=hashlib.md5(bstr).hexdigest()
- return ciphertext
-
- def register():
- re_name=input("请输入用户名:")
- while re_name in ku.keys():
- print("该用户已注册")
- re_name=input("请输入用户名:")
-
- re_password=input("请输入密码:")
- re_password=encrypt(re_password)
- ku[re_name]=re_password
- print("恭喜,注册成功")
- def login():
- name=input("请输入用户名:")
- while name not in ku.keys():
- print("该用户不存在")
- name=input("请重新输入用户名:")
- password=input("请输入密码:")
- while ku.get(name)!=encrypt(password):
- print("密码错误")
- password=input("请重新输入密码:")
-
- print("登陆成功")
- # 确保在程序开始时就运行get_int()函数
- if __name__ == "__main__":
- get_int()
复制代码
希望这个能帮助到你!
|
|