鱼C论坛

 找回密码
 立即注册
查看: 2588|回复: 17

[已解决]导入模块出错

[复制链接]
发表于 2023-1-30 08:51:01 | 显示全部楼层 |阅读模式
3鱼币
附上图片:
谁能解释一下这是为什么?
这个问题困扰了我1天
最佳答案
2023-1-30 08:51:02
  1. import sys
  2. import random as rd
  3. import time

  4. person = {}#储存用户信息
  5. side = width, high = 120, 100#边界长度

  6. class BigFish:#定义一个大鱼类
  7.     def __init__(self):
  8.         self.width = rd.randint(0,120)
  9.         self.high = rd.randint(0,100)
  10.         
  11.     def move(self):
  12.         pass
  13.         
  14.         
  15. class SmallFish:#定义一个小鱼类
  16.     pass

  17. while True:
  18.     beginning = input("""|---1.注册用户---|
  19. |---2.登录用户---|
  20. |---3.退出程序---|
  21. |---请输入指定代码(1、2或3):""")#初始化界面
  22.                      
  23.                      
  24.     if beginning == '1':#当输入1的时候
  25.         name = input("请输入您要注册的账号:")
  26.         if name in person:
  27.             print("用户已经存在!")
  28.         else:
  29.             passwd = input("请输入该账号对应的密码:")
  30.             passwd2 = input("请再次输入密码:")
  31.             if passwd != passwd2:
  32.                 passwd2 = input("输入错误,请重新输入:")
  33.             else:
  34.                 person[name] = passwd
  35.                 print("注册成功,快登录试试吧^_^\n")

  36.     elif beginning == '2':#当输入2的时候
  37.         the_name = input("请输入账号(输入3返回初始界面):")
  38.         
  39.         if the_name == '3':
  40.             print('\n')
  41.             pass
  42.         
  43.         elif the_name not in person:#判断用户名是否存在
  44.             print("用户名不存在!\n")

  45.         else:
  46.             the_passwd = input("请输入密码:")
  47.             if person[the_name] == the_passwd:
  48.                 print("登录成功,游戏开始!\n")
  49.                 for i in range(3):
  50.                       time.sleep(1)
  51.                       print(f'{3-i}秒后开始游戏!')
  52.             else:
  53.                 print("用户名或密码错误!")

  54.     elif beginning == '3':#当输入3的时候
  55.         print("感谢使用本程序!")
  56.         sys.exit()
  57.     else:#当输入不为1,2,3的时候
  58.         print("非正常指令!")
复制代码
报错信息.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 08:51:02 | 显示全部楼层    本楼为最佳答案   
  1. import sys
  2. import random as rd
  3. import time

  4. person = {}#储存用户信息
  5. side = width, high = 120, 100#边界长度

  6. class BigFish:#定义一个大鱼类
  7.     def __init__(self):
  8.         self.width = rd.randint(0,120)
  9.         self.high = rd.randint(0,100)
  10.         
  11.     def move(self):
  12.         pass
  13.         
  14.         
  15. class SmallFish:#定义一个小鱼类
  16.     pass

  17. while True:
  18.     beginning = input("""|---1.注册用户---|
  19. |---2.登录用户---|
  20. |---3.退出程序---|
  21. |---请输入指定代码(1、2或3):""")#初始化界面
  22.                      
  23.                      
  24.     if beginning == '1':#当输入1的时候
  25.         name = input("请输入您要注册的账号:")
  26.         if name in person:
  27.             print("用户已经存在!")
  28.         else:
  29.             passwd = input("请输入该账号对应的密码:")
  30.             passwd2 = input("请再次输入密码:")
  31.             if passwd != passwd2:
  32.                 passwd2 = input("输入错误,请重新输入:")
  33.             else:
  34.                 person[name] = passwd
  35.                 print("注册成功,快登录试试吧^_^\n")

  36.     elif beginning == '2':#当输入2的时候
  37.         the_name = input("请输入账号(输入3返回初始界面):")
  38.         
  39.         if the_name == '3':
  40.             print('\n')
  41.             pass
  42.         
  43.         elif the_name not in person:#判断用户名是否存在
  44.             print("用户名不存在!\n")

  45.         else:
  46.             the_passwd = input("请输入密码:")
  47.             if person[the_name] == the_passwd:
  48.                 print("登录成功,游戏开始!\n")
  49.                 for i in range(3):
  50.                       time.sleep(1)
  51.                       print(f'{3-i}秒后开始游戏!')
  52.             else:
  53.                 print("用户名或密码错误!")

  54.     elif beginning == '3':#当输入3的时候
  55.         print("感谢使用本程序!")
  56.         sys.exit()
  57.     else:#当输入不为1,2,3的时候
  58.         print("非正常指令!")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 09:22:44 | 显示全部楼层
检查一下第六行是不是用了中文逗号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 09:28:25 | 显示全部楼层
isdkz 发表于 2023-1-30 09:22
检查一下第六行是不是用了中文逗号

我把这些代码原原本本的复制了一遍到pycharm上,结果没有报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 09:29:16 | 显示全部楼层
isdkz 发表于 2023-1-30 09:22
检查一下第六行是不是用了中文逗号

不会,第六行是我在刚开始的时候就写了,试运行的时候一直没有报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 09:30:14 | 显示全部楼层
提示有异常字符,避免使用不统一的缩进或中文符号。
如果可以最好用pycharm或vscode写代码,这些简单的拼写问题,会提示你并提供纠正方法。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 09:30:45 | 显示全部楼层
Mta123456 发表于 2023-1-30 09:29
不会,第六行是我在刚开始的时候就写了,试运行的时候一直没有报错

那这样看也看不出什么问题,最好把代码放上来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 09:35:15 | 显示全部楼层
本帖最后由 Mta123456 于 2023-1-30 09:40 编辑
isdkz 发表于 2023-1-30 09:30
那这样看也看不出什么问题,最好把代码放上来

  1. import sys
  2. import random as rd
  3. import time

  4. person = {}#储存用户信息
  5. side = width, high = 120, 100#边界长度

  6. class BigFish:#定义一个大鱼类
  7.     def __init__(self):
  8.         self.width = rd.randint(0,120)
  9.         self.high = rd.randint(0,100)
  10.         
  11.     def move(self):
  12.         pass
  13.         
  14.         
  15. class SmallFish:#定义一个小鱼类
  16.     pass

  17. while True:
  18.     beginning = input("""|---1.注册用户---|
  19. |---2.登录用户---|
  20. |---3.退出程序---|
  21. |---请输入指定代码(1、2或3):""")#初始化界面
  22.                      
  23.                      
  24.     if beginning == '1':#当输入1的时候
  25.         name = input("请输入您要注册的账号:")
  26.         if name in person:
  27.             print("用户已经存在!")
  28.         else:
  29.             passwd = input("请输入该账号对应的密码:")
  30.             passwd2 = input("请再次输入密码:")
  31.             if passwd != passwd2:
  32.                 passwd2 = input("输入错误,请重新输入:")
  33.             else:
  34.                 person[name] = passwd
  35.                 print("注册成功,快登录试试吧^_^\n")

  36.     elif beginning == '2':#当输入2的时候
  37.         the_name = input("请输入账号(输入3返回初始界面):")
  38.         
  39.         if the_name == '3':
  40.             print('\n')
  41.             pass
  42.         
  43.         elif the_name not in person:#判断用户名是否存在
  44.             print("用户名不存在!\n")

  45.         else:
  46.             the_passwd = input("请输入密码:")
  47.             if person[the_name] == the_passwd:
  48.                 print("登录成功,游戏开始!\n")
  49.                  for i in range(3):
  50.                       time.sleep(1)
  51.                       print(f'{3-i秒后开始游戏!}')
  52.             else:
  53.                 print("用户名或密码错误!")

  54.     elif beginning == '3':#当输入3的时候
  55.         print("感谢使用本程序!")
  56.         sys.exit()
  57.     else:#当输入不为1,2,3的时候
  58.         print("非正常指令!")
复制代码

还没有编写完成。IDIE会报错但pycharm不会
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 09:40:22 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 10:04:19 | 显示全部楼层
Mta123456 发表于 2023-1-30 09:35
还没有编写完成。IDIE会报错但pycharm不会

  1. import sys
  2. import random as rd
  3. import time

  4. person = {}#储存用户信息
  5. side = width, high = 120, 100#边界长度

  6. class BigFish:#定义一个大鱼类
  7.     def __init__(self):
  8.         self.width = rd.randint(0,120)
  9.         self.high = rd.randint(0,100)
  10.         
  11.     def move(self):
  12.         pass
  13.         
  14.         
  15. class SmallFish:#定义一个小鱼类
  16.     pass

  17. while True:
  18.     beginning = input("""|---1.注册用户---|
  19. |---2.登录用户---|
  20. |---3.退出程序---|
  21. |---请输入指定代码(1、2或3):""")#初始化界面
  22.                      
  23.                      
  24.     if beginning == '1':#当输入1的时候
  25.         name = input("请输入您要注册的账号:")
  26.         if name in person:
  27.             print("用户已经存在!")
  28.         else:
  29.             passwd = input("请输入该账号对应的密码:")
  30.             passwd2 = input("请再次输入密码:")
  31.             if passwd != passwd2:
  32.                 passwd2 = input("输入错误,请重新输入:")
  33.             else:
  34.                 person[name] = passwd
  35.                 print("注册成功,快登录试试吧^_^\n")

  36.     elif beginning == '2':#当输入2的时候
  37.         the_name = input("请输入账号(输入3返回初始界面):")
  38.         
  39.         if the_name == '3':
  40.             print('\n')
  41.             pass
  42.         
  43.         elif the_name not in person:#判断用户名是否存在
  44.             print("用户名不存在!\n")

  45.         else:
  46.             the_passwd = input("请输入密码:")
  47.             if person[the_name] == the_passwd:
  48.                 print("登录成功,游戏开始!\n")
  49.                 for i in range(3):
  50.                       time.sleep(1)
  51.                       print(f'{3-i}秒后开始游戏!')
  52.             else:
  53.                 print("用户名或密码错误!")

  54.     elif beginning == '3':#当输入3的时候
  55.         print("感谢使用本程序!")
  56.         sys.exit()
  57.     else:#当输入不为1,2,3的时候
  58.         print("非正常指令!")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 10:21:07 | 显示全部楼层

照样在sys那里报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-30 10:22:27 | 显示全部楼层
Mta123456 发表于 2023-1-30 10:21
照样在sys那里报错

无效的字符串类型
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 10:25:01 | 显示全部楼层
Mta123456 发表于 2023-1-30 10:21
照样在sys那里报错

你那个idle是哪个版本的python?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 12:40:27 | 显示全部楼层
  1. rosoft/WindowsApps/python3.11.exe c:/Users/Administrator/Desktop/pythontets/test1.py   
  2. |---1.注册用户---|
  3. |---2.登录用户---|
  4. |---3.退出程序---|
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 12:42:52 | 显示全部楼层
本帖最后由 zsy0226 于 2023-1-30 12:44 编辑

实在不行,重装idle

看图标颜色是小于3.9

更新一下到3.10.9
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 13:15:34 | 显示全部楼层
本帖最后由 LuLD 于 2023-1-30 13:23 编辑
Mta123456 发表于 2023-1-30 09:35
还没有编写完成。IDIE会报错但pycharm不会


第 56 行  
原:print(f'{3-i秒后开始游戏!}')

改:print(f'{3-i}秒后开始游戏!')

f"{}字符串"  

第 54 行
for  缩进问题应该与 上行的 print 对齐
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-30 21:50:14 | 显示全部楼层
  1. import random as rd
  2. import sys
  3. import time

  4. person = {}  # 储存用户信息
  5. side = width, high = 120, 100  # 边界长度


  6. class BigFish:  # 定义一个大鱼类
  7.     def __init__(self):
  8.         self.width = rd.randint(0, 120)
  9.         self.high = rd.randint(0, 100)

  10.     def move(self):
  11.         pass


  12. class SmallFish:  # 定义一个小鱼类
  13.     pass


  14. while True:
  15.     beginning = input("""|---1.注册用户---|
  16. |---2.登录用户---|
  17. |---3.退出程序---|
  18. |---请输入指定代码(1、2或3):""")  # 初始化界面

  19.     if beginning == '1':  # 当输入1的时候
  20.         name = input("请输入您要注册的账号:")
  21.         if name in person:
  22.             print("用户已经存在!")
  23.         else:
  24.             passwd = input("请输入该账号对应的密码:")
  25.             passwd2 = input("请再次输入密码:")
  26.             if passwd != passwd2:
  27.                 passwd2 = input("输入错误,请重新输入:")
  28.             else:
  29.                 person[name] = passwd
  30.                 print("注册成功,快登录试试吧^_^\n")

  31.     elif beginning == '2':  # 当输入2的时候
  32.         the_name = input("请输入账号(输入3返回初始界面):")

  33.         if the_name == '3':
  34.             print('\n')
  35.             pass

  36.         elif the_name not in person:  # 判断用户名是否存在
  37.             print("用户名不存在!\n")

  38.         elif the_name in person:
  39.             the_passwd = input("请输入密码:")
  40.             if person[the_name] == the_passwd:
  41.                 print("登录成功,游戏开始!\n")
  42.                 for i in range(3):
  43.                     time.sleep(1)
  44.                     print(f'{3 - i}秒后开始游戏!')
  45.         else:
  46.             print("用户名或密码错误!")

  47.     elif beginning == '3':  # 当输入3的时候
  48.         print("感谢使用本程序!")
  49.         sys.exit()
  50.     else:  # 当输入不为1,2,3的时候
  51.         print("非正常指令!")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-7 19:25:54 | 显示全部楼层
会不会是文件的格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 15:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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