python办公自动化
查询文件
1、os.scandir()方法返回文件对象,file.stat()可以用来查询单个文件的信息。
for file in os.scandir("E:\\wli"):
print(file.name, file.stat().st_size)
- st_size:文件的体积大小(单位:bytes),除以1024就是KB;
- st_stime:文件的最近访问时间
- st_mtime:文件的最近修改时间
- st_ctime:Windows下表示创建时间
- st_birthtime:只在Mac、Linux下可用,表示创建时间
- Unix时间戳:前面的时间都是类似156763512这样的数字(这样的时间叫做Unix时间戳,可以利用Python转换为正常的日期时间)
- datetime:datetime模块转换一下时间
Windows:导入import time 使用time.ctime(file.stat().st_mtime)
Datetime: 导入import datetime 使用that_time=datetime.datetime.fromtimestamp(file.stat().st_mtime)
print(that_time)/print(that_time.year,that_time.month,that_time.day)
读取和写入文件
查询文件、利用python读取,写入文件内容
1、open() readlines() close()
f=open("E:\\wli\\a.txt","r",encoding='utf-8')
f=open("E:\\wli\\b.txt", "r", encoding='utf-8')
text=f.readlines()
print(text)
f.close()
2、 with…as代替f.close()实现智能判断是否关闭
with open("E:\\wli\\b.txt", "r", encoding='utf-8') as f:
text=f.readlines()
print(text)
写入open() write()
(参数“w”表示:文件存在的话就写入新的,原来的文件内容被覆盖;文件不存在的情况下新建文件 参数“a”表示:在文件后面直接追加内容)
with open("E:\\wli\\b.txt", "w", encoding='utf-8') as f:
text="写入我的第一行内容\n写入第二行内容\n"
f.write(text)
with open("E:\\wli\\b.txt", "a", encoding='utf-8') as f:
text="写入我的第一行内容\n写入第二行内容\n"
f.write(text)