#能调用方法的一定是对象
#*************************
poem = open('南歌子.txt','r',encoding='utf8').read() #'r'读模式,'read'读出来,文件要加后缀名
print(poem)
#**********读***************
f = open('南歌子.txt','r',encoding='utf8') #读模式打开
poem = f.read(10) #读方式操作 操作 十个字符
print(poem) # 操作
f.close() #关闭文件 关闭 一定关闭
#**********写***************
f = open('南歌子.txt','w',encoding='utf8') #'w'写模式打开 在创建对象的同时删除原有内容 如果没有此文件则新创立一个文件
f.write('xxx\t') #写方式操作 操作
f.write('aa a') #紧贴上一串字符显示
f.close() #关闭文件 关闭 一定关闭
#**********追加*************
f = open('南歌子.txt','a',encoding='utf8') #'a'追加模式打开 以后的写操作,写入的内容紧贴原有最后字符
f.write('hello')
f.close()
#***************************
f = open('南歌子.txt','r',encoding='utf8')
print(f.readline()) #读第一个换行符之前的内容
print(f.readline()) #光标已经到第二行,则这次会打印第二个光标和第一个光标之间的内容
print(f.readline())
print(f.readline(3)) #打印第四个和第五个换行符之间前三个字符
f.close()
#***************************
f = open('南歌子.txt','r',encoding='utf8')
print(f.readlines())
'''
['南歌子词二首 / 新添声杨柳枝词\n',
'【作者】温庭筠 【朝代】唐\n',
'\n',
'一尺深红胜曲尘,天生旧物不如新。\n',
'\n', '合欢桃核终堪恨,里许元来别有人。\n',
'\n', '井底点灯深烛伊,共郎长行莫围棋。\n',
'\n',
'玲珑骰子安红豆,入骨相思知不知。']
'''
f.close()
列表形式返回
#*****************************
f = open('南歌子.txt','r',encoding='utf8')
for i in f.readlines():
print(i.strip()) #print本身存在自动换行,所以把原有换行符去掉
f.close()
#*****************************
f = open('南歌子.txt','r',encoding='utf8')
num = 0
for i in f.readlines():
num += 1
if num == 9:
i = ''.join([i.strip(),'lll']) #字符串拼接最好用join
print(i.strip())
f.close()
#***********************重要
f = open('南歌子.txt','r',encoding='utf8')
for i in enumerate: #迭代器 节省内存 for内部将 f 对象做成迭代器,用一行去一行
print(i.strip())
f.close()
#***********************重要
f = open('南歌子.txt','r',encoding='utf8')
print(f.tell()) #返回当前光标位置
print(f.read(1))
print(f.tell()) #一个中文3个字节
f.seek(0) #重要:调整光标位置
print(f.read(1))
#**********************
import time
f = open('南歌子.txt','r',encoding='utf8')
f.flush() #将缓存里的内容更新到磁盘中(做进度条)
*******************
import time
for i in range(30):
print('*',end='',flush=True) #进度条
time.sleep(1)
#******************************
f = open('南歌子.txt','a',encoding='utf8')
f.truncate(47) #截断
f.close()
#*****************************
f = open('南歌子.txt','r+',encoding='utf8') #读写,,写的内容加到最后
print(f.readline())
f.write('lllll')
f.close()
#*******************************
f = open('南歌子.txt','w+',encoding='utf8') #写读,,先截断
print(f.readline()) #第一行为空
f.write('lllll')
f.seek(0) # 光标返回到最开始
print(f.readline())
f.close()
#*************终极问题*****************修改文件
f = open('南歌子.txt','r',encoding='utf8')
q = open('南歌子2.txt','w',encoding='utf8') #无法对源文件修改,只能取值然后对变量修改,后存入新的文件
num = 0
for i in f:
num += 1
if num == 5: #第五行进行修改
i = ''.join([i.strip(),'lll\n']) #在第五行后面加‘lll’
q.write(i) #写入新文件
f.close()
q.close()
Python学习日记-13-文件操作
最新推荐文章于 2024-11-15 08:00:00 发布
