精华内容
下载资源
问答
  • python读取文件
    2020-12-16 07:34:42

    本篇文章给大家带来的内容是关于Python读写文件的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助

    一.读取文件

    读取文件步骤:

    1.找到文件

    2.打开文件

    3.读取文件内容

    4.关闭文件

    打开方式:

    r 以只读方式打开文件,文件的引用将会放在文件开头

    rb 以二进制格式打开只读文件,文件的引用将会放在文件开头

    r+ 以读写方式打开文件,文件的引用将会放在文件开头

    w 以只写方式打开文件,如果该文件已经存在,则将其内容覆盖,如果不存在则会创建文件

    wb 以二进制格式打开只写文件,如果该文件已经存在,则将其内容覆盖,如果不存在则会创建文件

    w+ 以读写方式打开文件,如果该文件已经存在,则将其内容覆盖,如果不存在则会创建文件

    a 打开一个文件用于追加,如果该文件已经存在,文件的引用将会放在文件的末尾,也就是说新的内容添加到已有内容之后。果不存在则会创建文件进行写入

    a+ 打开一个文件用于读写,如果该文件已经存在,文件的引用将会放在文件的末尾,也就是说新的内容添加到已有内容之后。果不存在则会创建文件进行写入filePath = r"C:\网络安全\python\测试\文件操作\1.txt"

    1.txt

    123456789

    987654321

    # 打开文件

    fp = open(filePath,"r")

    # 打开二进制文件

    fp = open(filePath,"rb")

    # 打开指定编码格式的文件

    fp = open(filePath,"rb",encoding="GBK")

    # 错误处理:直接忽略

    fp = open(filePath,"rb",encoding="utf-8",errors="ignore")

    # 读取文件全部内容

    str1 = fp.read()

    print(str1)

    # 123456789

    # 987654321

    # 读取指定字节数

    str2 = fp.read(8)

    print(str2)

    # 12345678

    # 读取一整行,包括'\n'

    str3 = fp.readline()

    print(str3)

    # 123456789

    # 读取所有行并返回列表

    str4 = fp.readlines()

    print(str4)

    # ['123456789\n', '987654321']

    # 关闭文件

    fp.close()

    # 读文件的简写方式

    with open('1.txt',"r") as fp:

    print(fp.read())

    二.写文件

    写文件步骤:

    1、找到文件

    2、打开文件

    3、将内容写入缓冲区,此时内容没写写入文件

    4、刷新缓冲区,直接把缓冲区的数据立刻写入文件

    刷新缓冲区的方式:

    a、程序结束

    b、关闭文件

    c、手动刷新

    d、遇到\n

    e、缓冲区满了

    5、关闭文件# 打开文件

    fp = open('2.txt',"a")

    # 将内容写入缓存区

    fp.write("This is a test!")

    # 刷新缓存区

    fp.flush()

    # 关闭文件

    fp.close()

    # 简写方式

    with open('2.txt',"a") as fp:

    fp.write("hello")

    fp.close()

    更多相关内容
  • 很类似java的properties文件xml文件复制代码 代码如下:db_config.ini[baseconf]host=127.0.0.1port=3306user=rootpassword=rootdb_name=evaluting_sys[concurrent]processor=20 对应的python代码 复制代码 代码如下:...
  • 复制代码 代码如下:#输入文件f = open(r’D:\Python27\pro\123.bak’) #输出文件fw = open(r’D:\Python27\pro\123e.bak’,’w’)#按行读出所有文本lines = f.readlines()num = -1for line in lines: str = ‘@SES/...
  • Python读写文件的方法

    千次阅读 2021-12-15 19:38:39
    在文中,我们将研习如何用Python读取文件,然后,向文件写入内容并再次保存它。使用Python读写某种特别类型的文件,例如:JSON、CSV、Excel等,一般会有专门的模块。但是,在这里,我们将用Python打开文本文件(.txt)...

    用Python读写文件的方法

    在文中,我们将研习如何用Python读取文件,然后,向文件写入内容并再次保存它。使用Python读写某种特别类型的文件,例如:JSON、CSV、Excel等,一般会有专门的模块。但是,在这里,我们将用Python打开文本文件(.txt)。

    若使用Python的open函数,它将返回一个文件对象,此对象将包含一些方法和属性。我们可以使用这些方法和属性获得已打开文件的相关信息,并且,可以使用这些方法来更改所打开的文件。

    用 open()读取文件

    在本节中,我们将学习如何使用open()函数在Python中加载文件,最简单的例子是打开一个文件并创建一个文件对象。

    当使用Python的open()函数打开一个文件时,有若干个参数可用。然而,最常用的参数只有前两个。注意,第一个是强制性的,其余的是可选的。如果不添加mode参数,文件将在Python中以只读模式打开。

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

    mode参数

    读取文件有不同模式。如前所述,如果不带有mode参数,文件就会以只读方式打开,如下所示,列出了常用的几种打开模式。

    其中,mode='r'表示制度;mode='w'表示只写;mode='a'表示追加。mode='r+'表示可读写,但是文件必须存在,否则报错。

    一个简单的示例

    在下面的代码示例中使用open()代开一个文件,此处假设文件与Python脚本在同一个目录中,否则要增加路径。

    exfile = open('example_file')
    print(exfile)

    在上图中,很明显我们有一个以只读模式打开的文件对象,在open()中除了文件名之外没有任何其他参数。因此,无法向该文件写入任何内容。如果要打印文件名,只需键入print(exfile.name)

    创建文本文件并写入内容

    下面使用open()创建一个新文件。现在,要使用mode='w'参数,这样能够打开一个文件对象,并可以使用“文件对象写入”方法。

    exfile = open('example_file2', 'w')
    print(exfile)

    在上图中,可以当前文件对象是写入模式(‘ w ‘),在下面的代码块中,我们将向这个文件中添加一行文本:

    exfile.write('This is example file 2 \n')
    

    当然,也可以添加更多的行:

    exfile.write('Line number 2, in example file 2')
    exfile.close()

    注意,在最后一行务必要使用close() 关闭文件。在下图中,我们可以看到用Python创建的示例文件。

    如何使用open()读取Python中的文本文件

    在下一个用Python读取文件的示例中,我们将学习如何在Python中打开文本文件(.txt)。当然,这很简单,我们基本上已经掌握了如何使用Python实现这一目的。也就是说,如果我们只想在Python中读取.txt文件,我们可以使用open函数和read模式:

    txtfile = open('example_file.txt')
    

    read()示例

    这个操作很简单。现在,如果我们想打印文本文件的内容,可以有三个方法。第一个,使用文件对象的read()方法,读取整个文件内容。也就是说,用txtfile.read()可以得到以下输出:

    第二个是用readlines()将文件读取到列表中:

    txtfile = open('example_file.txt')  
    print(txtfile.readlines())

    在这个方法中,还可以使用通过提供参数,说明读取某些行。例如,下面的代码将把前两行读入,然后将其打印出来:

    txtfile = open('example_file.txt')
    line = txtfile.readlines(1)
    print(line)
    
    line2 = txtfile.readlines(2)
    print(line2)

    最后一个方法,通过循环方式,把文件的内容逐行打印出来:

    txtfile = open('example_file.txt')
    for line in txtfile:
        print(line)

    写入文件内容

    在示例中,打开一个.txt文件,并向其中以追加的方式增加内容,故需要用'a'模式打开。

    open('example_file2.txt', 'a')

    接下来,使用write()向其追加内容。

    txtfile.write('\n More text here.')
    

    在添加文本时,至少在Windows 10中,必须在行前添加\n。否则,新的一行将添加到最后一个字符的后面(在文件的最后一行)。如果我们要添加更多的行,也必须记住这样操作;

    txtfile.write(‘\nLast line of text, I promise.)
    txtfile.close()

    可以使用文本编辑器(例如,Notepad, Gedit)打开文本文件,会看到添加的最后两行:

    使用with语句

    使用with语句打开文件是一个非常好的习惯,这样就不必记住关闭文件,并且使用with语句的语法清晰易读:

    with open('example_file2.txt') as txtfile2:
        print(txtfile2.read())

    现在,如果我们使用read()方法,Python会抛出ValueError:

    txtfile2.read()

    分词和统计

    在读取文件后,可以使用字符串的split()方法将文本文件中的句子分割成单词,然后用collections模块中的Counter类来统计打开的文件中的单词数量。

    from collections import Counter
    
    with open('example_file2.txt') as txtfile2:
        wordcount = Counter(txtfile2.read().split())
        
    print(len(wordcount))
    # Output: 43

    现在,Counter类返回了一个字典,该字典包含所有单词和每个单词出现的次数。因此,可以这样来打印所有单词和单词总数:

    for k in sorted(wordcount, key=wordcount.get, reverse=True):
        print(k, wordcount[k])

    在上面的代码示例中,我们循环遍历字典中的键并对它们进行排序。这样,就把最常见的词排在最上面。当然,如果用Python读取包含多个单词的文件、并像这样打印结果,这种操作就是不可行的。

    以上介绍了以不同的模式读取文件、创建和写入文件、将数据追加到文件的方法,以及如何使用with语句读取文件。

    欢迎你的到来。

    展开全文
  • Python读写文件

    千次阅读 2020-11-20 22:55:47
    一、读写文件方式在当前python文件同级目录下存在一个名为file的文件,内容如下1、使用with open读取文件defread_file(filepath):with open(filepath) as fp:content=fp.read();returncontentret=read_file('file')...

    一、读写文件方式

    在当前python文件同级目录下存在一个名为file的文件,内容如下

    562030-20190702091829279-1504186918.png

    1、使用with open读取文件

    defread_file(filepath):

    with open(filepath) as fp:

    content=fp.read();returncontent

    ret=read_file('file')print(ret)

    562030-20190702091557306-858424709.png

    在上述脚本中可以发现,content作为一个列表,虽然在with open结构体内,但在with open结构体外也可以使用,但在方法内部定义的变量,在方法外部一般是不能访问的,这在java中被称为局部变量。

    2、不使用with读取文件

    defread_file(filepath):

    fp=open(filepath)

    content=fp.readlines()

    fp.close()returncontent

    ret=read_file('file')print(ret)

    562030-20190702091914786-97161430.png

    通过对两种读取方式的对比发现,第一种方式比较简洁,不用关心流是否关闭,with会在文件不再使用时自动关闭流,并且输出的格式与文件内容中显示的一致。第二种方式就必须要手动显示的关闭流,且输出格式与文件内容不同,需要进行特殊处理,且发生异常之后,可能会导致流未正常关闭。

    对第二种方式输出结果做处理,使其与文件内容一致,。readlines方法返回的为一个列表,故需要对类表进行遍历,替换特殊符号

    defread_file(filepath):

    str=""fp=open(filepath)

    content=fp.readlines()for c incontent:

    str+=c.replace('\n','\n')

    fp.close()returnstr

    ret=read_file('file')print(ret)

    562030-20190702094333799-1543510477.png

    实际使用中,建议使用第一种方式来读写文件内容,当文件不在当前python文件同级目录时,可使用绝对路径后者相对路径来确定文件的位置

    二、文件打开方式

    open方法可以传递两个参数,第一个参数为文件路径,第二个参数为打开文件的方式,可选值为r/w/a/r+

    r 只读模式打开文件,如果为传递第二个参数,则默认为r

    w 写入模式打开文件

    a 附加模式打开文件

    r+ 读取和写入模式打开文件

    1、只读模式(如上述实例),如果文件不存在,则抛出No such file or directory的异常

    2、写入模式

    如果写入的文件不存在,则会新建该文件,并且写入内容,如果文件已存在,则会覆盖文件之前内容,所以使用该方式时需要慎重,确定文件中之前内容被覆盖是否影响当前业务逻辑。

    defw_file(filepath):

    with open(filepath,'w') as wf:

    wf.write('today is a nice day\n')

    wf.write('do you want to take a trip.')

    w_file('wfile.txt')

    562030-20190702105740328-174777695.png

    写入模式只能写入,不能读取,若果在wf.write下面添加如下脚本,则会出现io.UnsupportedOperation: not readable的异常

    content=wf.read()print(content)

    562030-20190702110310657-1602518610.png

    3、附加模式

    defa_file(filepath):

    with open(filepath,'a') as af:

    af.write('nice day\n')

    af.write('good start.')

    a_file('file')

    562030-20190702112336987-557801606.png

    4、读写模式

    defrw_file(filepath):

    with open(filepath,'r+') as rwf:

    rwf.write('This is myfile.\n')

    rwf.write("The end.")

    content=rwf.read()returncontent

    content=rw_file('myfile')print(content)

    与读取模式相同,若文件不存在,也将抛出异常

    562030-20190702205250564-1641397177.png

    在当前Python脚本所在同级目录新建文件myfile,重新执行

    562030-20190702205905663-505190828.png

    562030-20190702210019809-1896626844.png

    通过上述控制台输出及文件内容来看,控制台并未输出任何内容,但要写入的信息已经保存到文件中,这说明,在执行read时,信息还未被写入文件。

    如果该文件内容已存在,执行上述读写程序,是否能够读取到文件内容,来尝试一下,保留上次myfile中内容,程序中向文件添加一行记录,再次读取之前文件内容

    defrw_file(filepath):

    with open(filepath,'r+') as rwf:

    rwf.write("new append")

    content=rwf.read()returncontent

    content=rw_file('myfile')print(content)

    562030-20190703084000324-683037549.png

    562030-20190703084011043-1222377978.png

    可以看到,读取的内容与原有文件内容不同,缺少了This is my字符,而文件中新添加的new append刚好填充了缺少的字符所在位置。

    上述示例先写入,再读取,出现上述情况也是意料之中,那么如果先读取之前文件,在写入,是否就和预期一样,读取原有文件内容,并且添加新内容?

    现在文件myfile内容如下

    562030-20190702210019809-1896626844.png

    defrw_file(filepath):

    with open(filepath,'r+') as rwf:

    content=rwf.read()

    rwf.write('\nappend new line.\n')

    rwf.write("new end.\n")returncontent

    content=rw_file('myfile')print(content)

    562030-20190703085419572-1388284478.png

    562030-20190703085435392-1375873961.png

    如上所示,答案是肯定的,先读取出了原有内容,在原有内容基础上添加了新内容。所以我们在使用的时候要注意读取和写入的顺序。

    展开全文
  • 本文通过实例代码给大家介绍了Python 读写文件的操作方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
  • 为了安全起见,最好...Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序。 代码如下:
  • python读写文件越来越慢

    千次阅读 2020-11-25 17:06:38
    本人处理数据集标签文件的时候,经常会遇到格式转换的问题比如coco转voc,xml转voc等等。每个文件都不是很大,可能只有1-2k,但是架不住多啊。一多就要疯狂io,磁盘占用率就很高。刚开始发现这个问题就使用了数据...

    1.磁盘占用率高

    本人处理数据集标签文件的时候,经常会遇到格式转换的问题比如coco转voc,xml转voc等等。每个文件都不是很大,可能只有1-2k,但是架不住多啊。一多就要疯狂io,磁盘占用率就很高。刚开始发现这个问题就使用了数据结构,真的是学了这么多年数据结构,第一次感觉到了他有多牛逼。set、dict都比list 快超级多,在处理大文件之类的情况现象超级明显。

    2.内存占用率高

    将提取的内容都放在内存里了,确实节约了不少时间,但是,到最后还是会变慢。what`s happened?

    内存占用率有点高啊。

    基础的-打开文件用with open(file)as xxx

    还可以看一下文件读取的read,readline,readlines,这里有一个

    3.啥都不高,就是运行速度慢 

    跑了一天没有结束的数据处理程序,我扔到服务器上跑,5分钟结束,你说气不气吧。

    展开全文
  • 今天小编就为大家分享一篇python 读写文件,按行修改文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 这个问题出现的原因比较多,所以要找到适合自己问题的方法 我出现这个问题是文件放在了c盘进行多次操作,导致出现了这个问题,放在别的盘就没事了,还有一种可能是打开了但是没有关闭这个文件,导致不行。 ...
  • python读取文件错误解决办法

    千次阅读 2021-03-29 12:33:21
    python读取txt文件时,全是数字的时候没有这个错误,但当txt文件里面有中文,报错了。 原因是txt文件编码格式若为utf-8的话,用gbk编码格式去编辑便不能decode(解码) 解决办法便是在读取文件时候将txt文件以指定...
  • 在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以读写文件就是请求操作系统打开一个文件对象(文件描述),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),...
  • 主要为大家详细介绍了python读取各种文件数据方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • python读取文件,换行问题

    千次阅读 2020-11-21 03:11:22
    法二,用 filelines 列表先存储文件内容,再读取。 换行控制 print()自带 换行。也就是默认带有 end='\n',Ctrl+鼠标点击可见函数原型为 def print(self, *args, sep=' ', end='\n', file=None): 所以,print时,若...
  • 广告关闭2017年12月,云+社区对外发布...pos = pos - 1 try: f.seek(pos, 2) #从文件末尾开始读 if f.read(1) == n:break except: #到达文件第一行,直接读取,退出 f.seek(0, 0) print f.readline().strip() retur...
  • python读取文件的几种方式

    万次阅读 2022-06-14 17:55:10
    下面是不同场景较为合适的数据读取方法:1.python内置方法(read、readline、readlines)纯文本格式或非格式化、非结构化的数据,常用语自然语言处理、非结构文本解析、应用正则表达式等后续应用场景下,Python默认...
  • 基本上都是GBK 和 UTF-8 编码的文本文件,但是python3 中默认的都是按照 utf-8 来打开。用不正确的编码参数打开,在读取内容时,会抛出异常。 open(dirpath + \\ + file, mode = r+, encoding = gbk, newline = ) ...
  • Python读写文件参数详解 open read write

    千次阅读 2020-07-05 11:37:48
    一、打开文件 open方法 python打开一个文件用open()方法,返回一个文件对象,它是可迭代的: f=open('file.txt', ...读写文件,光标位于文件开头 rb+ 读写二进制文件,光标位于文件开头 写入模式 w 文件存在
  • python 读取文件函数

    千次阅读 2021-01-21 16:22:29
    读取文件内容 file.read() 使用 file.read() 能够读取到文本的所有内容. file= open('my file.txt','r') content=file.read() print(content) """" This is my first test. This is the second line. This the ...
  • python读取文件行数

    千次阅读 2020-11-08 10:34:18
    python读取文件行数
  • python读取文件指定行的三种方法

    千次阅读 2022-06-21 16:57:24
    本文通过4个测试案例分析了在python读取文件指定行内容的方案,并得到了一些运行耗时的数据。从需求上来说,如果是对于小规模的数据,比如几百行规模的数据,建议使用readline循环遍历来操作,速度也相当不错,...
  • 下面小编就为大家带来一篇python 读写、创建 文件的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • Python读写文件之with open()

    千次阅读 2022-07-05 17:10:55
    文章目录 1 读文件 1.1 使用open()和close() 1.2 使用with open() 2 写文件 2.1 字符编码 2.2 读写方式列表 2.3 file object的属性 1 读文件 1.1 使用open()和close() 使用... python 使用 with open() as 读写文件
  • python读取文件——乱码问题总结

    千次阅读 2022-04-03 20:10:43
    python读取文件乱码问题总结
  • 主要介绍了Python读写文件方法,实例分析了Python读写文件常用的方法与使用技巧,需要的朋友可以参考下
  • 在使用python处理文本的时候,经常会需要读取文件的内容。如果文件比较小,那么直接使用open文件对象打开文件,再通过read()方法最为方便,这种方法就是把文件内容读出来后放到内存变量。readf = open('/var/log/...
  • 使用python读取文件并进行判断

    千次阅读 2020-12-11 00:32:00
    编写程序,打开“Python之禅”文本文件,读出文件的全部内容,并判断: (1)该文本文件共有多少行? (2)该文件中以大写字母A开头的有多少行? (3)一行中包含字符最多的及包含字符最少的分别在第几行? (4)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 545,508
精华内容 218,203
关键字:

python读取文件

友情链接: 07438282.rar