当前位置:   article > 正文

python文件操作_python中什么计算文本文件中最长行的长度

python中什么计算文本文件中最长行的长度

文件与异常处理

1 文件操作

1.1 创建打开文件

内置函数open()

Python内置函数open()可以用指定模式打开指定文件并创建文件对象。

 open(file, mode='r', buffering=-1, encoding=None, errors=None,
     newline=None, closefd=True, opener=None)
  • 1
  • 2

file参数指定了被打开的文件名称。
mode参数指定了打开文件后的处理方式。
buffering参数指定了读写文件的缓存模式。0表示不缓存,1表示缓存,如大于1则表示缓冲区的大小。默认值是缓存模式。默认值是-1,表示二进制文件和非交互式文本文件以固定大小的块为缓存单位。
encoding参数指定对文本进行编码和解码的方式,只适用于文本模式,可以使用Python支持的任何格式,如GBK、utf8、CP936等等。
newline只适用于文本模式

如果执行正常,open()函数返回1个文件对象,通过该文件对象可以对文件进行读写操作。如果指定文件不存在、访问权限不够、磁盘空间不足或其他原因导致创建文件对象失败则抛出异常。

在这里插入图片描述

f1 = open( 'file1.txt', 'r' )     # 以读模式打开文件,若文件不存在,抛出异常
f2 = open( 'file2.txt', 'w')      # 以写模式打开文件
  • 1
  • 2

当文件内容操作完之后,需要关闭文件对象,才能保证所做的修改都被保存到文件里,关闭后,将不能再写入文件。

f1.close()
  • 1

打开文件时使用with语句

在实际开发中,读写文件应优先考虑使用上下文管理语句with,关键字with可以自动管理资源,不论因为什么原因(哪怕是代码引发了异常)跳出with块,总能保证文件被正确关闭,并且可以在代码块执行完毕后自动还原进入该代码块时的上下文,常用于文件操作、数据库连接、网络连接、多线程与多进程同步时的锁对象管理等场合。
with语法结构:

with expression as target:
    with-bady
  • 1
  • 2

expression:用于制定一个表达式,可以是文件的open函数
target:用于指定一个变量,并且将expression的结果保存到该变量中。
with-bady:用于指定with语句体,其中可以是执行with语句后相关的一些操作语句。如果不想执行任何语句,可以使用pass语句代替。

s = 'Hello world\n文本文件的读取方法\n文本文件的写入方法\n'

with open('sample.txt', 'w') as fp:    #默认使用cp936编码,可自动关闭文件,无需close命令
    fp.write(s)

with open('sample.txt') as fp:         #默认使用cp936编码,默认以‘r’的模式打开文件
    print(fp.read())
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

打开文件指定编码方式

在使用open函数打开文件时,默认使用cp936(GBK),当被打开的文件不是GBK编码时,将抛出异常。
解决方法一种是直接修改文件的编码。另一种是再打开文件时,直接指定打开文件的编码方式。

微软的CP936通常被视为等同GBK,连 IANA 也以“CP936”为“GBK”之别名。不过实际上 GBK 定义的字符比 CP936 多出95个字,其中包括了15个非汉字及80个汉字。

写入文件

python文件提供了write方法,可以向文件写入内容。格式如下:

file.write(string)
  • 1
s = &#
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/640841
    推荐阅读
    相关标签
      

    闽ICP备14008679号