Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.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_Pandas_Dataframe - Fatal编程技术网

如何在python中为变量添加名称和整数

如何在python中为变量添加名称和整数,python,pandas,dataframe,Python,Pandas,Dataframe,我有一些pandas变量,比如esl0、esl1、esl2、esl3要读取,它们都是pandas数据帧 所以我将在for循环中阅读它们,如下所示: ([print('esl'+str(i),min(esli['MessageID']))表示范围(0,3)内的i)] 但是我得到了错误esli没有定义我如何解决它?我尝试了以下其他解决方案: filenames = ['esl'+str(i) for i in range(0,3)] for i in filenames: print(i,m

我有一些pandas变量,比如esl0、esl1、esl2、esl3要读取,它们都是pandas数据帧

所以我将在for循环中阅读它们,如下所示:

([print('esl'+str(i),min(esli['MessageID']))表示范围(0,3)内的i)]

但是我得到了错误esli没有定义我如何解决它?我尝试了以下其他解决方案:

filenames = ['esl'+str(i) for i in range(0,3)]
for i in filenames:
    print(i,min(i['MessageID']))

但是我得到了这个错误:字符串索引必须是整数 我怎样才能解决它


提前感谢

这里的变量i是一个字符串(文件名:“esl0”、“esl1”、“esl2”)。您不能使用i['MessageID',因为它类似于“esl0”['MessageID']返回一个
dict对象
,该对象将所有变量存储为键,将其对应的数据存储为值。您可以看到用户的注释

更新:

filenames = ['esl'+str(i) for i in range(0,3)]
filenames = [globals()['esl' + str(i)] for i in range(0,3)]
至:

filenames = ['esl'+str(i) for i in range(0,3)]
filenames = [globals()['esl' + str(i)] for i in range(0,3)]

esli
替换为
globals()['esl'+str(i)]
根据您上面提供的代码片段,您已将变量声明为字符串。您正在尝试访问这些字符串变量中的“MessageID”。因此,您会收到错误“TypeError:字符串索引必须是整数”