2016-11-23 215 views
-2

我有一个使用python读取的excel电子表格。我正在寻找一种方法,可以查询电子表格的第一列,并将该列中的每个单元格分配给一个变量。具有数据的列中的单元格数量明天可能会改变,例如, Excel电子表格:熊猫数据框中的动态行

Names 
Mike 
Adam 
Mitchell 

所需输出:Name1 = Mike; Name2 = Adam; Name3 = Mitchell。如果明天没有米切尔在列表或有额外的名字,我要么有3名变量或分别4. 我尝试到目前为止是:

for i in db.index: 
if i == 1: 
    Name1 = db.ix[0]['Names'] 
else: 
    if i==2: 
     Name2 = db.ix[1]['Names'] 
    else: 
     if i==3: 
      Name3 = db.ix[2]['Names'] 
     else: 
      Name4 = db.ix[3]['Names'] 

感谢和道歉对任何mystakes

+1

为什么显式变量像'Name1'和'Name2'?为什么不像'Names'这样的数组可以用'Names [0]'和'Names [1]'索引?硬编码的变量可能会在稍后将您带回角落。 – chrisaycock

+0

如何在我的情况下看起来克里斯(数组与索引)。我需要变量Name1,Name2等后来一个,因为我用它们来排序一些其他数据。 –

回答

0

我设法解决这个问题,以防其他人有相同的问题。我使用2个列表并将它们连接成一个字典。

names= db['Names'].tolist() 
lst = [] 
for i in range(db.index): 
    lst.append(i) 
lst=['Name'+str(x)for x in lst] 
dictionary = dict(zip(lst, names))