python中的列表、元组、字典、集合有时包含大量的数据,而这样的变量在主流编辑器PyCharm中并不能像MATLAB那样直接可视化显示出来亦或直接打印、复制粘贴。如下图是一张图片的像素点数据:
因此我们需要将这些变量的数值输出到Excel中,方便后续使用。
大致需要3个包:numpy、pandas和openpyxl,如果用Anaconda有的版本已经自带:
一.列表List
import pandas as pd
data=[[1,2,3,4,5],[6,7,8,9,10]]
df = pd.DataFrame(data)
print(df)
df.to_excel('D:\\output1.xlsx', index=False)
注意:
- openyxl不需要导入,只要安装了就可以;但必须导入pandas
- 路径及文件名需要自己写,但是一定要用双反斜杠——因为 \ 作为转义符会抵消一个~
实际上,此处调用pandas包将原始数据变为dataframe型的数据,因为上述只有数值,没有定义行列,因此列标默认从0开始设置,用户可以自行设置行列名:
import pandas as pd
data=[[1,2,3,4,5],[6,7,8,9,10]]df = pd.DataFrame(data,index=['1行','2行'],columns=['1列','2列','3列','4列','5列'])
print(df)
df.to_excel('D:\\output5.xlsx', index=False)
需要注意的是,参数名必须严格写index和columns~
另外可以设置index和columns的布尔值,选择性保留行列标签(默认为真):
import pandas as pd
data=[[1,2,3,4,5],[6,7,8,9,10]]df = pd.DataFrame(data,index=['1行','2行'],columns=['1列','2列','3列','4列','5列'])
print(df)
df.to_excel('D:\\output6.xlsx')
二.字典dict
import pandas as pddata = {'队名': ['拜仁慕尼黑', '勒沃库森', '多特蒙德'],'所在州': ['巴伐利亚','北莱茵-威斯特法伦', '北莱茵-威斯特法伦'],'排名': [1, 2, 10]}df = pd.DataFrame(data)
print(df)
df.to_excel('D:\\output2.xlsx', index=False)
三.集合set
import pandas as pddata={1,2,3,4,5}df = pd.DataFrame(data)
print(df)
df.to_excel('D:\\output3.xlsx', index=False)
四.元组tuple
import pandas as pddata=(1,3,2,5)df = pd.DataFrame(data)
print(df)
df.to_excel('D:\\output4.xlsx', index=False)
总的来说,往往大量的数据处理主要用到的还是字典和列表~