一、笔记说明
- 本博客专栏《Python基础》的所有笔记均为.py格式文件,复制后均可无误执行(注意修改文件路径,每个人的工作区不一样)。
- 在复制代码时,若代码段标明了文件名称,即该笔记包含多个文件,请注意每个代码段标明的文件名称,并在本地创建文件夹以便于运行。
- 代码运行环境Python3.7.9,建议使用Pycharm2020.1作为编辑器,使用Anaconda3作为包管理器。
二、代码部分
print("1.r模式:只读")
f=open("test.txt","r")
print(f.read())
f.close()
print("2.w+模式:可读可写入字符串,其他数据类型无法写入,不可追加")
f=open("test.txt","w+")
f.write("8888888")
f.seek(0)
print(f.read())
f.writelines("4d3s4\n4354fg\n46ger")
f.seek(0)
print(f.read())
f.writelines(["**5453**","**646gjm**"])
f.seek(5)
print(f.tell())
print(f.read())
f.close()
print("3.a+模式:可读可写入可追加字符串,其他数据类型无法写入")
f=open("test.txt","a+")
f.seek(0)
print(f.readline(5))
print(f.readlines())
f.seek(0)
print(f.readlines(2))
f.close()
print("4.wb+模式:可读可写入可追加二进制数据")
f=open("test.txt","wb+")
f.write(b"123")
f.seek(0)
print("输出二进制数据:",f.read())
f.close()
print("5.内存假文件:虚拟文件")
print("5.1:字符串数据")
import io
sio=io.StringIO()
sio.write("1233")
print(sio.getvalue())
print("5.2:二进制数据")
sio=io.BytesIO()
sio.write(b"12312")
print(sio.getvalue())
print(sio.getvalue().decode())
print("6.Python文件的上下文管理:自动保存 & 关闭文件,可一次对多个文件操作")
with open("test.txt","r+") as f,\
open("test2.txt","w+") as f1:
a=f.read()
print(a,type(a))
f1.write(a)
print("7.对文件目录/文件操作模块:os")
import os
print("当前文件路径:",os.getcwd())
print("当前文件夹内容:",os.listdir("C:\\Users\\kchacker\\Desktop\\工作区\\Python"))
print("7.1其他os模块的目录及文件操作:")
print("8.os.path模块:")
print("当前文件路径:",os.getcwd())
os.path.join("Python","1223654")
print("当前文件路径:",os.getcwd())
print("9. pickle模块实现Python数据序列化")
import pickle
dataList = [
[1, 1, 'yes'],
[1, 1, 'yes'],
[1, 0, 'no'],
[0, 1, 'no'],
[0, 1, 'no']
]
dataDic = {
0: [1, 2, 3, 4],
1: ('a', 'b'),
2: {'c': 'yes', 'd': 'no'}
}
fw = open(r'./dataFile.pkl', 'wb')
pickle.dump(dataList, fw, -1)
pickle.dump(dataDic, fw)
fw.close()
fr = open(r'./dataFile.pkl', 'rb')
data1 = pickle.load(fr)
print(data1)
data2 = pickle.load(fr)
print(data2)
fr.close()
三、转载说明
- 本文内容完全原创,文章完成时间2021.3.17。
- 若要转载本文,请在转载文章末尾附上本文链接:https://blog.csdn.net/qq_35772105/article/details/114919515
- 本文代码部分唯一MD5:EA3ECF776B2E8CC6CAE2F76764C74D10。