Week3-文件读写和字符编码

7、文件读写:

open("filename","r",encoding="utf-8"):
with open as f:

8、字符编码:
      utf-8:英文依然用ASCII,中文统一用3个字节;

      utf8.decode(utf8) --> unicode
      unicode.encode("gbk") --> gbk
#!/usr/bin/en python
# Author:lijun

'''
模式    可做操作    若文件不存在    是否覆盖
r        只能读            报错            -
r+        可读可写        报错            是
w        只能写            创建            是
w+     可读可写        创建            是
a      只能写            创建        否,追加写
a+        可读可写        创建        否,追加写
'''
'''
f = open("file.txt","r",encoding="utf-8")  #文件句柄
#一次行读出全部
data = f.read()
print(data)
f.close()
'''

'''#读前5行
g = open("file.txt","r",encoding="utf-8")
for i in range(5):
    print(g.readline().strip())
g.close()

#不打印指定行:
h =  open("file.txt","r",encoding="utf-8")
count = 0
for line in h:
    if count == 5:
        count += 1
        continue
    print(line)
    count += 1
h.close()

'''
#光标:
j =  open("file.txt","r",encoding="utf-8")
print(j.tell())         #打印光标所处位置,一个字符是一位
print(j.readline())
print(j.tell())
print(j.seek(2))        #移动到指定位置
print(j.readline())

print(j.encoding)       #返回文件的编码格式
#print(j.fileno())      #不常用
print(j.name)           #打印文件名字
print(j.isatty())       #如果文件连接到一个终端设备返回 True,否则返回 False。

#判断文件是否可读可写
print(j.readable())
print(j.writable())

#print(j.flush())       #刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。

print(j.__next__())     #返回文件下一行。
#print(j.truncate())    #截取文件
View Code
原文地址:https://www.cnblogs.com/pythonlee/p/9591174.html