鱼C论坛

 找回密码
 立即注册
查看: 2663|回复: 5

[已解决]自己思考的小甲鱼python第26课的课后题,小甲鱼的答案还没看,问题是我这个哪里出错了

[复制链接]
发表于 2016-12-22 00:28:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 哈_公 于 2016-12-22 00:40 编辑
  1. print ('|---新建用户:N/n---|')
  2. print ('|---登录账号:E/e---|')
  3. print ('|---退出程序:Q/q---|')

  4. Dlchengxu = {}

  5. def Dbyhm (ne):     # 对比用户名的函数
  6.     if ne in Dlchengxu:
  7.         return 0
  8.     else :
  9.         return 1
  10.    
  11. def Dbmm (mi) :     # 对比密码的函数
  12.     if mi == Dlchengxu[name]:
  13.         return 0
  14.     else :
  15.         return 1

  16. def Xj():   # 新建用户的函数
  17.     name = input (print ('请输入注册用户名:'))
  18.     if name in Dlchengxu :
  19.             name = input(print ('此用户名已经被使用,请重新输入:'))
  20.             Dlchengxu[name] = input (print ('请输入密码:'))
  21.             print ('注册成功,赶紧试试登录吧')
  22.     Dlchengxu[name] = input (print ('请输入密码:'))

  23. def Dl ():      # 登录账号的函数
  24.     name = input (print('请输入用户名:'))
  25.     while Dbyhm (name):
  26.         name = input (print ('该用户名不存在,清重新输入:'))
  27.     Mima = input (print ('请输入密码:'))
  28.     while Dbmm (Mima):
  29.         Mima = input (print ('密码不正确,请重新输入:'))
  30.     if Mima == Dlchengxu[name]:
  31.         print ('欢迎使用哈公系统,结束程序请点击右上角的X')

  32. while 1:
  33.     Zldaima = input ('请输入指令代码:')

  34.     if Zldaima == 'N' or Zldaima == 'n' :
  35.         def Xj()
  36.     if Zldaima == 'E' or Zldaima == 'e' :            
  37.         def Dl()
  38.     if Zldaima == 'Q' or Zldaima == 'q' :
  39.         break
  40. print ('感谢使用哈公登录程序,祝你生活愉快,再见')
复制代码
最佳答案
2016-12-22 14:44:54
while 1:
    Zldaima = input ('请输入指令代码:')

    if Zldaima == 'N' or Zldaima == 'n' :
        def Xj()
    if Zldaima == 'E' or Zldaima == 'e' :            
        def Dl()
    if Zldaima == 'Q' or Zldaima == 'q' :
        break

语法错误,调用Xj() 和Dl() 时,前面多的def
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-12-22 00:34:25 From FishC Mobile | 显示全部楼层
             Dlchengxu[name] = input (print ('请输入密码:'))   
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-12-22 00:44:31 | 显示全部楼层
zua 发表于 2016-12-22 00:34
Dlchengxu[name] = input (print ('请输入密码:'))

这语句错哪了?我运行的时候是报错缩进问题
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-22 09:49:09 | 显示全部楼层
Python3 支持中文变量
直接写中文即可

def Dbyhm (ne):     # 对比用户名的函数
--------------
def 对比用户名 (用户名):     # 对比用户名的函数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-22 14:44:54 | 显示全部楼层    本楼为最佳答案   
while 1:
    Zldaima = input ('请输入指令代码:')

    if Zldaima == 'N' or Zldaima == 'n' :
        def Xj()
    if Zldaima == 'E' or Zldaima == 'e' :            
        def Dl()
    if Zldaima == 'Q' or Zldaima == 'q' :
        break

语法错误,调用Xj() 和Dl() 时,前面多的def
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-12-22 14:46:21 | 显示全部楼层
riqiao007 发表于 2016-12-22 14:44
while 1:
    Zldaima = input ('请输入指令代码:')

哈哈,昨晚半夜脑袋糊涂了,今天睡醒一看,调用函数出错了...然后修改好了,谢谢啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-24 14:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表