Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将文件中的参数添加到列表中,然后使用列表_Python_File_List - Fatal编程技术网

Python 将文件中的参数添加到列表中,然后使用列表

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

在某些事情上遇到麻烦是很直截了当的

我正在制作一个简单的游戏(使用pygame),其中敌人(精灵)在特定的游戏时间进入游戏屏幕。我想写一个文本文件会更容易管理所有的敌人,然后这些敌人会被读入一个列表

如果我的文件“heli.txt”包含:

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

非常感谢。这是我想要的简单解决方案。