如何存储从用户输入创建的变量,并在Python中的不同文件中使用它?
我是Python新手,因此对堆栈溢出社区也是新手。我已经开始了我的第一个小项目,我想从一个由6人组成的小组中创建一个随机团队生成器,并分配两个随机团队。从那里,我试图创建两个文件(每个团队一个),其中每次一个用户可以输入他们团队中每个球员的得分,最终我希望这在一个单独的文件中创建一个实时排行榜。 我已经成功创建了一个团队生成器。这就是它的本质:如何存储从用户输入创建的变量,并在Python中的不同文件中使用它?,python,file,variables,global-variables,Python,File,Variables,Global Variables,我是Python新手,因此对堆栈溢出社区也是新手。我已经开始了我的第一个小项目,我想从一个由6人组成的小组中创建一个随机团队生成器,并分配两个随机团队。从那里,我试图创建两个文件(每个团队一个),其中每次一个用户可以输入他们团队中每个球员的得分,最终我希望这在一个单独的文件中创建一个实时排行榜。 我已经成功创建了一个团队生成器。这就是它的本质: numberofplayers = int(len(online_players)) number_teams = int(input('How ma
numberofplayers = int(len(online_players))
number_teams = int(input('How many teams do you want there to be?\n '))
k = int(numberofplayers/number_teams)
if numberofplayers == 6 and number_teams == 2:
global team_1
team_1 = random.sample(online_players, k)
str(team_1)
for x in team_1:
online_players.remove(x)
global team_2
team_2 = online_players
print('Team 1')
print(team_1[0] +'(1)')
print(team_1[1] + '(2)')
print('...')
print(team_1[2] +'(3)' +
'\n')
print('Team 2')
print(team_2[0] + '(4)')
print(team_2[1]+ '(5)')
print(team_2[2]+ '(6)')
这成功地生成了两个3人的团队。此文件名为Team_Generator.py
在另一个名为team_1_input.py的文件中,我使用
from Team_Generator.py import team_1,team_2
print(team_1)
当我在控制台中运行它时,它会再次执行整个团队生成器过程,而不仅仅使用已经分配的团队表单Team_Generator.py
了解如何让它工作,以便team_1_input.py识别从team_Generator.py分配的团队吗
谢谢如果这段代码也是您的程序的起点,您应该用以下内容来围绕它:
if __name__ == "__main__":
# your code here
它将阻止在导入模块时运行它
然而,通过导入主入口点,您创建了一个循环依赖关系:您的主文件依赖于另一个依赖于主文件的文件!它可以工作,但它会让你的生活变得不必要的复杂
相反,您应该让另一个文件公开一个以团队为参数的函数,并让主文件调用它
def do_something_about_teams(team_1, team_2):
print(team_1)
在主文件中:
from otherfile import do_something_about_teams
# beginning of main, etc...
do_something_about_teams(team_1, team_2)
如果这段代码也是您的程序的起点,您应该用以下内容围绕它:
if __name__ == "__main__":
# your code here
它将阻止在导入模块时运行它
然而,通过导入主入口点,您创建了一个循环依赖关系:您的主文件依赖于另一个依赖于主文件的文件!它可以工作,但它会让你的生活变得不必要的复杂
相反,您应该让另一个文件公开一个以团队为参数的函数,并让主文件调用它
def do_something_about_teams(team_1, team_2):
print(team_1)
在主文件中:
from otherfile import do_something_about_teams
# beginning of main, etc...
do_something_about_teams(team_1, team_2)