随笔 - 331,  文章 - 92,  评论 - 54,  阅读 - 60万
#open函数,该函数用于文件处理,文件操作一共就有三种方法,打开文件
#关闭文件,


#先来说下打开文件,打开文件的模式有下面几种
# 1、r,只读模式
f = open('test.log','r',encoding='utf-8')
print(f.readable())
True

# 2、w、只写模式【不可读,不存在则创建,存在则删除文件中的内容】
f = open('test.log','w',encoding='utf-8')
print(f.readable())

False

# 3、a、追加模式【不可读,不存在则创建,存在则只追加内容】
f = open('test.log','a',encoding='utf-8')
print(f.readable())

False

#
# +表示可以同时学习某个文件
# r+ 可读写文件【可读、可写、可追加】

# w+ 写读
f = open('test.log','w+',encoding='utf-8')
print(f.readable())
True

# a+ 没什么卵用


# U表示在读取时,可以将\r \n \r\n自动转换成\n
# rU
# r+U


# f = open('test.log','w',encoding='utf-8')
# f.write('中daddfdeeee')
# f.close()

f = open('test.log','r',encoding='utf-8')
ret = f.read(2)
print(ret)


#中d,这里的2是读取2个字符

#readable是否可读

#readline,读取一行



#seek和tell,读

f = open('test.log','r',encoding='utf-8')
print(f.tell())
f.read(2)
print(f.tell())
f.close()

# 0
# 4

#tell的意思是查看当前指针当前的字节的位置,第一条tell命令,因为还没有开始读,所以
#值为0,然后读了2个字符,其中一个是中文,中文为3个字节,然后在加一个英文
#为4个字节,所以tell命令输出的值为4


#seek用来指定当前指针的位置,也是字节,指定从第四个字节开始读,读两个字节的数据

f = open('test.log','r',encoding='utf-8')
f.seek(4)
ret = f.read(2)
print(ret)
f.close()
# ad



#truncate,seek指定当前的指针为4,那么truncate就会保留该指定前面的数据
#删除该指针后面的数据然后保存到源文件中

f = open('test.log','r+',encoding='utf-8')
f.seek(4)
f.truncate()




#追击内容,要切记追加默认是没有换行符的,加了\n就会换行
f.close()
f = open('test.log','a',encoding='utf-8')
f.write('aaaaaaaaaaaaaaa')
f.close()
f = open('test.log','a',encoding='utf-8')
f.write('\nbbbbbbbbbbbbbbb')
f.close()

#每次只读取一行
f = open('test.log','r',encoding='utf-8')
ret = f.readline()
print(ret)
ret = f.readline()
print(ret)
posted on   bainianminguo  阅读(4893)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示