Excel有一个数字列表,我希望看到这样的东西:
[110652450, 5309154]
但是我看到这样的东西:
[[110652450], [5309154]]
我尝试了newtest = [x[:-1] for x in df]
在类似问题上提出的建议,但这只是删除了我的电话号码并保留了赌注
df = pd.read_excel(filename.xlsx",sheetname='Sheet1')
df = df.values.tolist()
print(df)
答案 0 :(得分:1)
我没有完全回答您的问题,但是您似乎正在寻找类似的东西?
df = [[110652450], [5309154]]
newest = [i[0] for i in df]
print(newest)
>> [110652450,5309154]
答案 1 :(得分:0)
尝试
newtest = [x[0] for x in df]
您需要访问列表的第一个元素并使用它而不是整个列表
答案 2 :(得分:0)
您有一个元素的列表。 x[:-1]
返回不带最后一个元素的列表,因此只返回一个空列表。相反,请执行[x[0] for x in df]
或[x for x, in df]
答案 3 :(得分:0)
您可以使用列表推导删除方括号:
df = pd.read_excel("filename.xlsx", sheetname="Sheet1")
df = df.values.tolist()
df = [x[0] for x in df]
print(df)
之所以可行,是因为df
中的每个元素都是一个包含一项的列表。
答案 4 :(得分:0)
numpy.squeeze可能是首选的方法。调用np.squeeze(a)
以获取要展平的数组。 np.squeeze应该比列表理解如[e[0] for e in a]