4

【Python】open打开

 2 years ago
source link: https://www.guofei.site/2017/03/17/pythonio.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

【Python】open打开

2017年03月17日

Author: Guofei

文章归类: Python语法 ,文章编号: 1206


版权声明:本文作者是郭飞。转载随意,但需要标明原文链接,并通知本人
原文链接:https://www.guofei.site/2017/03/17/pythonio.html

Edit

open

可以open文本文件和二进制文件

x=open("data.txt", encoding='utf-8', mode="r")
for i in x:
    print(i) # 相当于x.readline()

open

f=open(...)
  • r:只读,如果文件不存在,则输出错误
  • w:只写,如果文件不存在,则创建
  • a:只写,在末尾追加写入
  • x:只写,如果文件存在,则报错
  • r+:读写

b代表二进制,t代表文本模式(默认)

  • rb:只读二进制,如果文件不存在,则输出错误
  • wb:只写二进制,如果文件不存在,则自动创建
  • ab:附加到二进制文件末尾
f.read() # 返回字符串,内容是游标后到文件末尾的全部内容
f.read(100) # 返回游标之后的100个字符(没有100个字符则返回实际行数)
f.readline() # 返回下一行内容的字符串,结尾返回空字符串
f.realines() # 返回list,每项是字符串,含\n
#readlines([size])
for i in f:print(i) # i是str(如果是b模式open的,是bytes)
list(f) # [i for i in f]

f.seek(0) # 设置游标位置到0,游标位置
#f.seek(off, whence) where为0表示从文件开始算起,1表示从当前位置算,2表示从文件结尾算,off可正可负.只有b模式,才允许1,2.
f.tell() # 返回当前的游标位置编号

f.write(str) # 把文本或二进制写入文件。并不立即写入文件,而是close时写入文件。不会自动加换行符
f.writelines(<list>) # 把list写入文件,不会在元素之间自动加逗号、空格等
f.close() # 写入数据会在这一步实际写入到硬盘中

flush() # 清空I/O缓存,并把数据强行写回磁盘

注1:用readline取数后,下面的for in语句中,将不会从文件头开始,因为游标已经移动

对话框IO

str_1 = input("Enter a string: ")

您的支持将鼓励我继续创作!

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK