我是Python的新手,在处理多个数据文件时遇到问题。我想将多个数据文件读取到多个数组中,例如,我想将1c.txt中的数据读取到数组c1中,将2c.txt中的数据读取到c2中,等等。我尝试了以下代码:
import numpy as np
for i in range(1,15):
globals()['c%s' % i] = np.loadtxt(['%sc.txt' % i], usecols=(0,1,2))
但是它用提示IndexError: list index out of range
,我更改usecols=(0,1,2)
为usecols=(0)
它仍然没有用,所以我认为其他地方一定是错误的。
我也发现我不能使用代码作为:['c%s' % i]
获取变量名称为c1,c2等。而且我必须在globals()
之前添加a ['c%s' % i]
,但是我不知道为什么。
在线等待。非常感谢!
好吧,我至少可以回答其中一些问题。
我发现我无法将代码用作:['c%s'%i] = np.loadtxt(['%sc.txt'%i]
那是因为['c%i' % i]
它将为您提供字符串列表,而不是变量。这样一来,globals()[string]
您就可以访问(分配)字典(globals()字典)。我强烈建议不要使用globals()!
做类似的事情:
mydict = {}
for i in range(1,15):
mydict['c%i' % i] = np.loadtxt('c%i.txt' % i, usecols=(0,1,2))
我还注意到,您使用的格式%s
应该使用的位置%i
,%s用于字符串,但是变量i
是整数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句