文件的读写操作
- 使用open函数打开文件
f = open(文件名,'读写操作')
f.close()
# 例如
open('root.txt','w')
2.常见的操作有
操作模式 | 具体含义 |
---|---|
'r' | 读取 (默认) |
'w' | 写入(会先截断之前的内容) |
'x' | 写入,如果文件已经存在会产生异常 |
'a' | 追加,将内容写入到已有文件的末尾 |
'b' | 二进制模式 |
't' | 文本模式(默认) |
'+' | 更新(既可以读又可以写) |
- 文件的读操作
file.read() —> 将文件全部读入内存,返回一个字符串
file.readline() —> 一行行的读文件,返回字符串
file.readlines() —> 全部读出,返回一个列表 - 文件的写
file.write() - with open() 不用在调用close,文件读写后会自动关闭
excel的操作
这里列出不同的库,可以进行的操作
本人暂时使用openpyxl
,可以直接进行读写xlsx,比较方便
这里简单介绍几种方法
- 新建
from openpyxl import Workbook
# 实例化
wb = Workbook()
# 激活 worksheet
ws = wb.active
2.打开已有
from openpyxl import load_workbook
wb = load_workbook('文件名称.xlsx')
3.写入数据
# 方式一:数据可以直接分配到单元格中(可以输入公式)
ws['A1'] = 42
# 方式二:往末尾追加
ws.append([1, 2, 3])
# 方式三:Python 类型会被自动转换
ws['A3'] = datetime.datetime.now().strftime("%Y-%m-%d")
4.创建表(sheet)
# 方式一:插入到最后(default)
ws1 = wb.create_sheet("Mysheet")
# 方式二:插入到最开始的位置
ws2 = wb.create_sheet("Mysheet", 0)
5.选择表(sheet)
# sheet 名称可以作为 key 进行索引
>>> ws3 = wb["New Title"]
>>> ws4 = wb.get_sheet_by_name("New Title")
>>> ws is ws3 is ws4
True
6.访问单元格
(1)单个单元格访问
# 方法一
>>> c = ws['A4']
# 方法二:row 行;column 列
>>> d = ws.cell(row=4, column=2, value=10)
# 方法三:只要访问就创建
>>> for i in range(1,101):
... for j in range(1,101):
... ws.cell(row=i, column=j)
7.获得最大行列
# 获得最大列和最大行
print(sheet.max_row)
print(sheet.max_column)
8.获取每一行每一列
sheet.rows为生成器, 里面是每一行的数据,每一行又由一个tuple包裹。
sheet.columns类似,不过里面是每个tuple是每一列的单元格。