文件操作
# 文件读
import sys
f = open(sys.path[0] + '/coruntine.py', 'r', encoding='utf-8') # 读取二进制使用rb
content = f.read()
f.close()
# with语句复写——自动调用close方法
with open(sys.path[0] + '/coruntine.py', 'r', encoding='utf-8') as f:
print(f.read())
# 按行读取
with open(sys.path[0] + '/coruntine.py', 'r', encoding='utf-8') as f:
count = 0
for line in f.readlines():
count += 1
print('第%d行:----- ' % (count) + line)
# 写文件
with open(sys.path[0]+'/test2.py','w',encoding='utf-8') as f: # w,wb覆盖 a追加
f.write('hello world')
# StringIO——字符串缓存
from io import StringIO
f = StringIO('test')
while True: # 按行获取值
s = f.readline()
if s =='':
break
print(s)
print(s.strip()) # 去掉默认字符
f.write(' again') # 默认追加
print(f.getvalue()) # 获取值
# BytesIO——二进制缓存
from io import BytesIO
f = BytesIO()
f.write('测试'.encode('utf-8'))
print(f.getvalue())
文件操作符:
'r' |
默认只读 |
---|---|
'w' |
写模式 |
'x' |
独占模式创建,如果文件存在就会失败 |
'a' |
追加写模式 |
'b' |
二进制模式 |
't' |
文本模式 |
'+' |
磁盘更新——读写 |
os模块:
name
操作系统名称
uname
系统详情
environ
环境变量——get()
获取键值对
path.abspath('.')
绝对路径
path.join
path.split
路劲拼接,拆分
mkdir
rmdir
创建删除目录
path.splitext()
文件扩展名
rename
重命名
remove
删除文件
# 复制文件
import sys
from shutil import copyfile
copyfile(sys.path[0]+'/test.py',sys.path[0]+'/test3.py')
# 列出文件;判断文件夹
import sys
import os
for dir in os.listdir(sys.path[0]):
if(os.path.isdir(dir)):
print(dir)
pickle.dumps
pickle.loads
序列化,反序列化
# 类中的非构造函数声明属性不会存在__dict__中
import json
class Test:
name = 2
def __init__(self):
self.age = 20
test = Test()
print(test.name)
print(json.dumps(test, default=lambda obj: obj.__dict__))
print(json.dumps(test.__dict__))
# json反序列化
print(json.loads(json.dumps(test.__dict__)))
进程线程
...由于只有在unix机器上才能试验,留待试验后继续。