当前位置: 首页 > wzjs >正文

免费网站建站排名沐川移动网站建设

免费网站建站排名,沐川移动网站建设,北京公司买房,网站月流量什么意思12. File Python open() 方法用于打开一个文件,并返回文件对象。 注意: 使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。如果该文件无法被打开,会抛出 OSError open(file, moder, buffering-1, encodingNone, e…

12. File

Python open() 方法用于打开一个文件,并返回文件对象。
注意:

  1. 使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。
  2. 如果该文件无法被打开,会抛出 OSError
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

参数说明:

  • file: 必需,文件路径(相对或者绝对路径)。
  • mode: 可选,文件打开模式
  • buffering: 设置缓冲
  • encoding: 一般使用utf8
  • errors: 报错级别
  • newline: 区分换行符
  • closefd: 传入的file参数类型
  • opener: 设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。

mode参数有:

模式描述
t文本模式 (默认)。
x写模式,新建一个文件,如果该文件已存在则会报错。
b二进制模式。
+打开一个文件进行更新(可读可写)。
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

12.1 close()

close() 方法用于关闭一个已打开的文件。关闭后的文件不能再进行读写操作, 否则会触ValueError 错误。 close() 方法允许调用多次。

当 file 对象,被引用到操作另外一个文件时,Python 会自动关闭之前的 file 对象。 使用 close() 方法关闭文件是一个好的习惯。

fileObject.close();
# 打开文件  
fo = open("python.txt", "wb")  
print("文件名为: ", fo.name)  # 关闭文件  
fo.close()

结果:

文件名为:  python.txt

12.2 flush()

flush() 方法是用来刷新缓冲区的,即将缓冲区中的数据立刻写入文件,同时清空缓冲区,不需要是被动的等待输出缓冲区写入。

一般情况下,文件关闭后会自动刷新缓冲区,但有时你需要在关闭前刷新它,这时就可以使用 flush() 方法。

fileObject.flush();
# 刷新缓冲区
fo.flush()

12.3 fileno()

fileno() 方法返回一个整型的[[文件描述符]](file descriptor FD 整型),可用于底层操作系统的 I/O 操作。

fileObject.fileno(); 
# 打开文件
fo = open("python.txt", "wb")fid = fo.fileno()
print ("文件描述符为: ", fid)# 关闭文件
fo.close()

结果:

文件描述符为:  3

12.4 isatty()

isatty() 方法检测文件是否连接到一个终端设备,如果是返回 True,否则返回 False。

fileObject.isatty(); 
import sys  fo = open("python.txt", "wb")  
print(fo.isatty())  
fo.close()  print(sys.stdout.isatty())

结果:

False
False

使用cmd运行

False
True

12.5 read()

read() 方法用于从文件读取指定的字符数(文本模式 t)或字节数(二进制模式 b),如果未给定参数 size 或 size 为负数则读取文件所有内容。

fileObject.read([size]); 

python.txt

这是第一行
这是第二行
这是第三行
这是第四行
这是第五行
# 打开文件  
fo = open("python.txt", "r+")   line = fo.read(10)  # 读取10个字符
print ("读取的字符串: %s" % (line))  # 关闭文件  
fo.close()

结果:

读取的字符串: 这是第一行
这是第二

12.6 readline()

readline() 方法用于从文件读取整行,包括 “\n” 字符。如果指定了一个非负数的参数,则返回指定大小的字节数,包括 “\n” 字符。

fileObject.readline(); 
"""
1:python
2:python
"""
# 打开文件  
fo = open("python.txt", "r+")  line = fo.readline()  
print ("读取第一行 %s" % (line))  line = fo.readline(5)  
print ("读取的字符串为: %s" % (line))  # 关闭文件  
fo.close()

结果:

读取第一行 1:python读取的字符串为: 2:pyt

12.7 readlines()

readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表,该列表可以由 Python 的 for… in … 结构进行处理。 如果碰到结束符 EOF 则返回空字符串。

fileObject.readlines( );
"""
1:python
2:python
"""
# 打开文件
fo = open("runoob.txt", "r")for line in fo.readlines():                          #依次读取每行  line = line.strip()                             #去掉每行头尾空白  print ("读取的数据为: %s" % (line))# 关闭文件
fo.close()

结果:

读取的数据为: 1:python
读取的数据为: 2:python

12.8 seek()

seek() 方法用于移动文件读取指针到指定位置。

fileObject.seek(offset[, whence])

参数

  • offset – 开始的偏移量,也就是代表需要移动偏移的字节数,如果是负数表示从倒数第几位开始。
  • whence: 可选,默认值为 0。给 offset 定义一个参数,表示要从哪个位置开始偏移;0 代表从文件开头开始算起,1 代表从当前位置开始算起,2 代表从文件末尾算起。
# 0123456789abcdef
f = open('python.txt', 'rb+')  
f.seek(5)      # 移动到文件的第六个字节  print(f.read(1))  # b'5'f.seek(-3, 2)  # 移动到文件倒数第三个字节  print(f.read(1)) # b'd'

12.9 tell()

tell() 方法返回文件的当前位置,即文件指针当前位置。

fileObject.tell()
# 打开文件  
fo = open("python.txt", "r+")  
print("文件名为: ", fo.name)  print("读取的数据为: %s" % (fo.readline()))  # 获取当前文件位置  
print("当前位置: %d" % (fo.tell()))  # 关闭文件  
fo.close()

结果:

读取的数据为: 1:python当前位置: 10

12.10 truncate()

truncate() 方法用于从文件的首行首字节开始截断,截断文件为 size 个字节,无 size 表示从当前位置截断;截断之后的所有字节被删除,其中 Widnows 系统下的换行代表2个字节大小。

fileObject.truncate( [ size ])

参数

  • size – 可选,如果存在则文件截断为 size 字节。
"""
1:python  
2:python
"""
# 打开文件  
fo = open("python.txt", "r+")  fo.truncate(10)  # 关闭文件  
fo.close()
"""
1:python
"""

12.11 write()

write() 方法用于向文件中写入指定字符串。

  • 在文件关闭前或缓冲区刷新前,字符串内容存储在缓冲区中,这时你在文件中是看不到写入的内容的。
  • 如果文件打开模式带 b,那写入文件内容时,str (参数)要用 encode 方法转为 bytes 形式,否则报错:TypeError: a bytes-like object is required, not 'str'
  • 换行需要制定换行符 \n。
fileObject.write( [ str ])
"""
1:python  
2:python
"""
# 打开文件  
fo = open("python.txt", "r+")  str = "\n3:python"  
# 在文件末尾写入一行  
fo.seek(0, 2)  
line = fo.write( str )  # 读取文件所有内容  
fo.seek(0,0)  
for index in range(3):  print (next(fo))  # 关闭文件  
fo.close()
"""
1:python  
2:python  
3:python
"""

12.12 writelines()

与write一致,不需要换行符

12.13 with关键字

使用 with 关键字系统会自动调用 f.close() 方法, with 的作用等效于 try/finally 语句是一样的。

with open('./test_runoob.txt', 'w') as file:file.write('hello world !')
http://www.dtcms.com/wzjs/828793.html

相关文章:

  • 传奇霸主官方网站网站安排
  • 潮流印花图案设计网站全面的客户管理系统
  • 网站备案 修改为什么网站开发成本高
  • 桐乡建设局网站挖掘关键词爱站网
  • 天猫秘券网站怎么做wordpress 加背景音乐
  • iis编辑网站绑定wordpress数据库迁移
  • 歙县建设银行网站云服务器官网首页
  • 惠州市建设厅网站做家教需要什么哪个网站的会员
  • 网站页尾模板网站备案帐号找回
  • 创新的网站制作图片模板
  • 网站做兼容处理怎么设置做管理信息的网站
  • 企业网站用视频做首页企业级网站开发技术
  • 编程一小时网站建网站服务器是什么东西
  • 麻涌网站仿做长沙网站开发长沙网站建设
  • 淘客优惠券网站怎么做如何写网站建设策划案
  • 个人网站 可以做淘宝客吗FPGA毕业设计代做网站
  • 公司域名网站怎样做加入购物车的网站
  • 做旅游网站需要的背景淄博网站排名外包
  • 南京市建设工程交易中心网站怎么在网站里添加cnzz统计
  • 一汽大众网站谁做的深圳福田会展中心近期展会
  • 徐州自助建站模板网络服务器多少钱一台
  • 导购网站怎么推广安卓软件开发app
  • 网站开发公司会计科目在线妇科免费咨询
  • 企业网站开发需求分析wordpress阅读数总是0
  • 苏州专业网站建设设计公司排名域名查询平台
  • 如何做好一个购物网站崇义做网站
  • 企业建站项目开发公司办公电脑申请怎么写
  • 免费开设网站湘潭网站建设优选磐石网络
  • 唐尧文化 网站建设工作总结商城网站建设解决方案
  • 百度商桥怎么和网站推广app的单子都在哪里接的