Python 将文件中的参数添加到列表中,然后使用列表
在某些事情上遇到麻烦是很直截了当的 我正在制作一个简单的游戏(使用pygame),其中敌人(精灵)在特定的游戏时间进入游戏屏幕。我想写一个文本文件会更容易管理所有的敌人,然后这些敌人会被读入一个列表 如果我的文件“heli.txt”包含:Python 将文件中的参数添加到列表中,然后使用列表,python,file,list,Python,File,List,在某些事情上遇到麻烦是很直截了当的 我正在制作一个简单的游戏(使用pygame),其中敌人(精灵)在特定的游戏时间进入游戏屏幕。我想写一个文本文件会更容易管理所有的敌人,然后这些敌人会被读入一个列表 如果我的文件“heli.txt”包含: 10 660 130 1 10 660 350 2 我想让程序在第10点在某个x,y上添加两个敌人,并在屏幕上按一定的模式运行 这就是我要说的: fh = open( "heli.txt" ); heliList = [] for line in fh.r
10 660 130 1
10 660 350 2
我想让程序在第10点在某个x,y上添加两个敌人,并在屏幕上按一定的模式运行
这就是我要说的:
fh = open( "heli.txt" );
heliList = []
for line in fh.readlines():
y = [value for value in line.split()]
heliList.append( y )
fh.close()
这似乎适当地填充了列表:
>>> print (heliList)
[['10', '660', '130', '1'], ['10', '660', '350', '2']]
我目前用于第二个敌人的方法是:
if timer.returnTick() == 10:
heli = Heli(660, 350, 2)
随着更多敌人的加入,这一点变得很难维持。而且,当我开始添加各种敌人类型时
基本上,我希望游戏在每个勾号的列表中循环,看看当前勾号是否与任何一行的第一个参数匹配,如果匹配,则添加该敌人。但是,我在这里有点拘泥于正确的语法(我觉得值可能也有问题,因为它们似乎是字符串而不是整数)
感谢您的帮助。要将值转换为整数,请执行以下操作:
fh = open( "heli.txt" );
heliList = []
for line in fh.readlines():
y = [int(value) for value in line.split()] #added "int( )"
heliList.append( y )
fh.close()
一旦你有了所有的敌人列表,要检查他们的勾号,请执行以下操作:
tick = 0
while True:
for enemy in enemylist:
if enemy[0] == tick:
DO_YOUR_CODE
tick += 1
#dont forget to add an exit to this loop
非常感谢。这是我想要的简单解决方案。