繁体   English   中英

如何修复此错误?:ImportError:无法导入名称'titlescreen'

[英]How can I fix this error?: ImportError: cannot import name 'titlescreen'

所以,我一直试图为我的游戏制作一个标题画面。 在此标题屏幕中,您可以选择开始播放,也可以选择阅读游戏规则。 规则和标题都是不同.py文件中的定义。

我已经尝试将定义导入到tittle屏幕和说明中。 但是只要我将标题导入指令文件,它就会告诉我无法导入它。

#tittlescreen.py file

import sys,time,random
import fileinput, time
from time import sleep
from rules import instructions
from begin import start
import os

answer = None

while answer not in ("1" , "2"):

    answer = input(" Type '1' or '2': ")

    if answer == "1":
      os.system('clear')
      start()
    elif answer == "2":
      os.system('clear')
      instructions()          #It's here that it begins to have a problem
#rules.py File

import sys,time,random
import fileinput, time
from time import sleep
from titlescreen import titlescreen
from begin import start
import os

proceed = "1"

  while proceed not in ("0"):
    pross = input("Press '0' to begin playing.")
    if pross == "0":
      os.system('clear')
      titlescreen()          #And here

显示的错误是这个:

Traceback (most recent call last):
  File "main.py", line 4, in <module>
    from titlescreen import titlescreen
  File "/home/runner/titlescreen.py", line 4, in <module>
    from instructions import instruções
  File "/home/runner/instructions.py", line 4, in <module>
    from titlescreen import titlescreen
ImportError: cannot import name 'titlescreen'

我不知道为什么它不会让我将“titlescreen”定义导入“指令”定义。

我真的希望我可以创建一个可以访问彼此的工作标题屏幕和说明,就像在普通游戏中一样。

我假设你想在“rules.py”文件中调用titlescreen()时运行“titlescreen.py”文件。 对? 不幸的是,这并不是“来自titlescreen import titlescreen”的工作方式。

拿这个类似的例子。 以下代码的工作方式......

from X import Y

是否Python在名为X.py的文件中查找名为Y的函数定义。由于titlescreen.py中没有函数,因此无法找到任何内容!

如果你想在titlescreen.py文件中导入名为“titlescreen”的函数,它应该看起来像这样......

def titlescreen():
    answer = None

    while answer not in ("1" , "2"):

        answer = input(" Type '1' or '2': ")

        if answer == "1":
            os.system('clear')
            start()
        elif answer == "2":
            os.system('clear')
            instructions()

希望这可以解决问题。

titlescreen已经是Python中另一个模块的名称。 尝试重命名titlescreen模块,它应该工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM