在Python中使用导入打开另一个Python脚本只能工作一次

问题描述:

我只是在Pygame中玩弄一些东西,制作一个小游戏。我决定做一个单独的菜单脚本和一个主游戏脚本,我使用在Python中使用导入打开另一个Python脚本只能工作一次

import script2 

在第一个脚本,然后

import script1 

在第二个,这样当你按下一个第一个按钮,第二个按钮打开,第二个打开第一个。

它第一次工作,脚本1打开脚本2,脚本2关闭脚本1,但试图第二次打开脚本2不起作用。我不明白为什么会发生这种情况,如果有人能解释我会很感激。

+0

你能展示一些代码,告诉你如何打开和关闭的东西? – Sweeper

+0

@Sweeper我实际上只是使用两种不同的脚本(仅在每个脚本中使用了两行代码(它们是两行代码,一个用于显示脚本的打印语句以及Import语句)它仍然没有任何额外的因素。我想我实际上已经知道为什么会发生这种情况,导入可能不会再次运行,因为该脚本已经被导入,并且不能被**导入。尽管如果你有想法,解决方法仍然会很好? –

+0

很明显,您无法使用导入多次运行脚本。您可以在脚本中声明一个函数并多次调用该函数。 – Sweeper

根据你的评论,我觉得我有点得到你想要做的。您正尝试使用import作为多次运行其他脚本的一种方式。但这不是进口的目的。

如果要多次运行分段代码,即重复使用它,可以声明函数

# in script1.py 
def my_function(): 
    print("Hello") 
    print("World") 

现在script2.py,你可以导入SCRIPT1,然后调用函数:

import script1 
script1.my_function() 

运行SCRIPT2会产生这种

Hello 
World