python将数据写入excel中

最近总能碰见将数据写入excel中,对这个着实不熟悉,每次使用都要现搜,有的还涉及到pandas(数据分析有需要这个库的)
先说说我之前的做法:
1.最简单,最通用的方法(如何元素里面没有英文逗号)

with open'wenjianming','a+'as file:
	file.write(数据内容)

然后又得搜open这个第二个参数的w,a是啥意思,有的覆盖,有的可以自行创建文件等等,

r:只读 用read()
 
w: 只写 用write()       // 会清除之前写的内容
 
a: 追加内容,用write()    //会在已经写的内容基础上追加新的内容

全部模式

r:	以只读方式打开文件。文件的指针将会放在文件的开头。这是**默认模式**。
rb: 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+: 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+:以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w:	打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb:	以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+:	打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+:以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a:	打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab:	以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+:	打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+:以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

然后利用csv的形式,是以英文逗号区分各个单元格,于是就有下面的代码:

with open('文件名','a+') as file:
	file.write('数据1','数据2',...)

这个方法很便利,通俗易懂,csv格式在电脑也会打开是表格形式,对于某些需求xlsx等格式的,可以通过以下代码进行转换:

df = read_csv(f'C:\\Desktop\\XXX.csv', encoding='GBK')  # 将csv转换为excel
df.to_excel(f'C:\\Desktop\\XXX.xlsx', index=False)

这个直接用write形成csv的方法虽然便利,但是有一个缺点就是万一元素里面有英文逗号,但是你还要写进一个单元格的时候,就不行了。
2.使用 openpyxl
openpyxl 是一个 Python 库,用于读写 Excel 2010 及以上版本的 xlsx/xlsm/xltx/xltm 文件。

from openpyxl import Workbook

# 创建工作簿
wb = Workbook()
ws = wb.active

# 添加数据
data = [
    ['Name', 'Age', 'City'],
    ['Alice', 30, 'New York'],
    ['Bob', 25, 'Los Angeles']
]

for row in data:
    ws.append(row)

# 保存到文件
wb.save("example.xlsx")

3.使用pandas
这个方法有待完善

import pandas as pd

# 数据
df = pd.DataFrame({
    'Name': ['Alice', 'Bob'],
    'Age': [30, 25],
    'City': ['New York', 'Los Angeles']
})

# 写入 Excel 文件
df.to_excel("example.xlsx", index=False)

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值