3-11 文本的练习
在pycharm 中 打开文本 会显示 gbk报错 需要在 读取的文件中 声明 格式、
以一份歌词为例
f = open('11.txt','r',encoding='utf-8') ###encoding='utf-8'
for i in f:
print(i)
f = open('11.txt','r',encoding='utf-8')
print(f.readlines()) ### readlines() 是读取所有的文件 变成一个列表形式展现
## 结果如下
## C:\Users\Administrator.AK9VHAA9RRQ5EBC\PycharmProjects\untitled\venv\Scripts\python.exe C:/Users/Administrator.AK9VHAA9RRQ5EBC/PycharmProjects/untitled/3-10练习/文本练习.py
##['我能够明白 你对我的爱\n', '只是被掩埋 表达不出来\n', '我能够体会 你也会无奈\n', '释放不出来 你从不责怪\n', '你的心好像是大海\n', '有平静也有汹涌澎湃\n', '我听到远山的呼唤 眼泪掉下来\n', '你的心好像是白云 朵朵都绽放着光彩\n', '我听到远山的呼唤\n', '面朝大海 春暖花开']
for i in f.readlines():
print(i)
###同样可以打印出所有的 文本 (不及上面的好用)
f = open('11.txt','r',encoding='utf-8')
print(f.readline())
print(f.tell())
## tell() ## 统计打印多少 空格字符都算一个占位符 以字符计算
f = open('11.txt','r',encoding='utf-8')
print(f.readline())
print(f.tell())
print(f.readline())
###这边我想从头去读取文件
f.seek(0)
print(f.readline()) ### seek() 指定读取文件的位置 前提你必须知道位置在哪
print(f.seek(33))
print(f.readline())
![](https://images2018.cnblogs.com/blog/1341050/201803/1341050-20180311125920803-994851565.png)
#### seek(33) 指定后 读取文件就会从33个字符后开始读取
print(f.encoding) ## 打印文本是什么格式的
utf-8
print(f.seekable()) ## 测试文件是否能返回指定位置可以T 不可以F
print(f.flush() ###实时刷新进硬盘
closed() 判断文件是否关闭 T F
加载进度条的原理
import sys,time
for i in range(20):
sys.stdout.write('#') ##stdout 文件输出
sys.stdout.flush() ###实时刷新
time.sleep(0.1) ##每0.1 打印一次
print(f.truncate(10)) ###截断 例 10个字符 不过只能从开始位置截断
读写 是 r+ 写读是 w+ 读二进制 rb 在python3 网络传输必须二进制 写二进制 wb
### 读写 先读 后写 写读,,,先写后读 没什么意义
在python 3 中 不可以在中间插入 但是可以编辑放置一个新的文本中。。
a 追加的 意思 文件存在则追加写入 不存在则从创建写入
rU U 是大写的 将 \r \n \rn 全部转换成 \n 主要适用于 win 和linux 转换使用