
Python3操作文件系列(一):判断文件|目录是否存在三种方式
Python3操作文件系列(二):文件数据读写|二进制数据读写
Python3数据文件读取与写入
一: 文件数据|二进制数据读写
import os
"""
Python3的open(file,mode="文件的操作模式")
利用该函数可以对文件和二进制文件进行只读,只写,读/写和追加等操作
"""
pathFile = '../dataanalysis/file/fileData.txt'
try:
if os.path.exists(pathFile):
with open(pathFile, "w") as file:
file.write("你好,老杨,欢迎来到Python3操作文件的世界!")
print("数据已成功写入 %s 文件!" % pathFile)
else:
print("文件: %s 不存在,下面将为你创建文件...........")
# 创建文件,mode = w 才会创建不存在的文件
with open(pathFile, 'w') as f:
print("文件创建成功!")
except IOError as err:
print("系统错误: ", err)
print("-----------------一次写入多行数据--------------------")
try:
with open(pathFile, 'w') as f:
f.writelines(['Python3 这是第一行数据.....\n', 'Mongodb这是第二行数据....'])
print("数据已写入")
except IOError as err:
print("系统异常: ", err)
print()
print("----------------------------读取文件的内容----------------------")
try:
with open(pathFile, 'r') as file:
content = file.read()
print("读到文件内容: %s" % content)
print()
print("输出内容后,文件指针已经只写末位,故下面无内容输出")
print("读起10个字符: ", file.readline(5))
except IOError as err:
print("系统异常: ", err)
try:
with open(pathFile, 'r') as file:
print()
print("读起10个字符: ", file.readline(6))
except IOError as err:
print("系统异常: ", err)
try:
with open(pathFile, 'r') as file:
print()
print("读起多行内容(设置只读一行): ", file.readlines(1))
print("读起多行内容(默认读取所有的行:): ", file.readlines())
except IOError as err:
print("系统异常: ", err)
binaryPath = "../dataanalysis/file/binaryData.cad"
try:
with open(pathFile, 'a+') as f:
f.writelines(['Python3 这是第一行数据.....\n',
'Mongodb这是第二行数据....',
'Python3 这是第一行数据.....\n',
'Python3 这是第一行数据.....\n',
'Python3 这是第一行数据.....\n'])
print("数据已写入")
except IOError as err:
print("系统异常: ", err)
try:
with open(pathFile, 'r') as file:
print()
for line in file.readlines(-1):
print("读取文件所有行: ", line)
except IOError as err:
print("系统异常: ", err)
print('-------------------读写二进制文件数据----------------------')
try:
with open(binaryPath, 'wb') as file:
# 用字符串表示坐标数据,转换为字节流,吸入文件
# 注意数据之间用空格进行分隔
file.write(bytes(('100000 ' + '10 ' + '20 ' + '29 ' + '22 ' + '30'), 'utf-8'))
except IOError as err:
print("系统异常: ", err)
print("读取二进制文件")
try:
with open(binaryPath, 'rb') as file:
line = file.read().decode("utf-8")
lines = line.split(" ")
for item in lines:
print("存入文件的二进制项为: ", item)
except IOError as err:
print("系统异常: ", err)
二: 文件数据|二进制数据读写运行效果
D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\file\FileReadOperationByOpen.py
数据已成功写入 ../dataanalysis/file/fileData.txt 文件!
-----------------一次写入多行数据--------------------
数据已写入----------------------------读取文件的内容----------------------
读到文件内容: Python3 这是第一行数据.....
Mongodb这是第二行数据....输出内容后,文件指针已经只写末位,故下面无内容输出
读起10个字符:读起10个字符: Python
读起多行内容(设置只读一行): ['Python3 这是第一行数据.....\n']
读起多行内容(默认读取所有的行:): ['Mongodb这是第二行数据....']
数据已写入读取文件所有行: Python3 这是第一行数据.....
读取文件所有行: Mongodb这是第二行数据....Python3 这是第一行数据.....
读取文件所有行: Mongodb这是第二行数据....Python3 这是第一行数据.....
读取文件所有行: Python3 这是第一行数据.....
读取文件所有行: Python3 这是第一行数据.....
-------------------读写二进制文件数据----------------------
读取二进制文件
存入文件的二进制项为: 100000
存入文件的二进制项为: 10
存入文件的二进制项为: 20
存入文件的二进制项为: 29
存入文件的二进制项为: 22
存入文件的二进制项为: 30Process finished with exit code 0



![练[BJDCTF2020]The mystery of ip](https://img-blog.csdnimg.cn/img_convert/e0f9e3dda86e802bada195bd9a5b71ff.png)













![[0xGame 2023] week1](https://img-blog.csdnimg.cn/26c6d04e3c93485b9c1d008dd690aa48.png)
