python"3中文件操作open()函数

2020-11-17 16:03:23 字数 3598 阅读 6234

1楼:李少龙感谢你

在windows下路径一般写为:“d:\data\python"

但是字符串中\是转义字符,所以你可把\写成\\,或者路径前加上r如r"d:\data\python",表面该字符串不进行转义即可

python文作操作函数open()

2楼:匿名用户

1.并非只能访问文本文件

open可以访问任何形式的文件,在访问非文本格式文件(二进制文件)的时候,访问模式通常加上‘b’(即二进制模式:‘rb’或‘wb’),但并不必须,依情况而定

2.路径是填写在前面的filename参数处的如你的例子,若要只读这个文件,则是:

open('d:\\123.txt', 'r')(由于\是转义符,所以要将他再转义,才能得到\符号本身)若要写入,则是:

open('d:\\123.txt', 'w')以此类推

如果是不加路径,只有一个文件名:

open('123.txt', 'r')

则会在python运行的当前目录下寻找该文件名的文件另:读模式(r)必须保证文件存在,写模式(w)至少要保证文件所在目录存在(文件本身可以不存在)

如果不满足,则系统会抛出一个ioerror

关于python3中的open函数问题

3楼:匿名用户

wirte单词写错了,是write;还有最后close也写错了

python使用open函数打开文件的常用模式

4楼:匿名用户

要以读文件的模式打开一个文件对象,使用python内置的open()函数,传入文件名和标示符:

f = open('/users/michael/test.txt', 'r')

标示符'r'表示读,这样,我们就成功地打开了一个文件。

如果文件不存在,open()函数就会抛出一个ioerror的错误,并且给出错误码和详细的信息告诉你文件不存在:

如果文件打开成功,接下来,调用read()方法可以一次读取文件的全部内容,python把内容读到内存,用一个str对象表示:

最后一步是调用close()方法关闭文件。文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件数量也是有限的:

由于文件读写时都有可能产生ioerror,一旦出错,后面的f.close()就不会调用。所以,为了保证无论是否出错都能正确地关闭文件,我们可以使用try ...

finally来实现:

但是每次都这么写实在太繁琐,所以,python引入了with语句来自动帮我们调用close()方法:

这和前面的try ... finally是一样的,但是**更佳简洁,并且不必调用f.close()方法。

调用read()会一次性读取文件的全部内容,如果文件有10g,内存就爆了,所以,要保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。另外,调用readline()可以每次读取一行内容,调用readlines()一次读取所有内容并按行返回list。因此,要根据需要决定怎么调用。

如果文件很小,read()一次性读取最方便;如果不能确定文件大小,反复调用read(size)比较保险;如果是配置文件,调用readlines()最方便;

python3 open()打不开已存在文件

5楼:萍水e相逢

你确定 运行的这个文件和要打开的文件在同一目录下

6楼:风驰电掣

原因很简单python的sys没有你的前缀内容,怎么说呢,其实你输入的相对路径他就是sys的路径加上你写的后半段路径拼接而成的解决办法3个,

路径变成绝对路径

重新打开一个项目,项目为你运行文件的上级文件夹添加sys,python的环境变量

3方法的**

import sys

import os

path = os.path.dirname(os.path.abspath(__file__))#当前运行文件的上级文件夹路径

7楼:匿名用户

file_dir = os.getcwd()file_path = os.path.join(file_dir, 'pi_digits.txt')

再with open(file_path) as file_object: ...

绝对可以

8楼:匿名用户

你那个文本档案文件名字里不要打 .txt 他已经是文本文档了

python中open函数

9楼:匿名用户

f=open(r'c:\users\dell\desktop\1.txt','r')

print(f.read())

文件打开操作只是打开了文件,还需要读取文件内容才能显示文件内容

python中关于open()函数的typeerror

10楼:z伊凡

windows环境:

一级文件目录下,文件名为纯数字组成,程序是不可执行的而你的属于多级目录,多级文件目录下,即使文件名为纯英文组成,程序也不可执行

这些情况下有两种解决方式:

(1)将文件名改为由英文字母组成(只适合一级文件目录)(2)将路径名中的\字符进行转义,即e:\ml\ch02\testdigits\0_12.txt转成e:

\\ml\\ch02\\testdigits\\0_12.txt

要把所有路径分隔符转义为"\\"

希望我的回答可以帮到你:-)

python3 文件读写 注意什么

11楼:羿小天

open()函数返回一个file对象,并且最常用的用法是使用两个参数,open(filename,mode)

第一个参数是文件名,第二个参数表示文件的打开方式。只读方式打开可以使用'r',写文件可以使用'w'(这个选项会把当前文件夹中存在同名文件时将该文件擦除),'a'可以用来追加内容,任何内容都会被写入文件的末尾。'r+'会同时读写。

mode参数是可选参数,如果没有的话,默认是'r'。

一般情况下,文件都是用文本模式打开的,也就意味着,文件读写都是使用某种编码的,末日呢情况下都是用utf-8编码。'b'会用二进制形式打开文件。这个时候,文件读写都是以字节的形式。

在文本模式下,默认会把平台相关的换行符(windows平台是\r\n,linux平台是\n)转换成\n,在写文件时,会把\n转换成平台相关的字符写入。这种后台的操作对于文本会非常有用,但是对于二进制文件如jpeg或exe文件,则会破坏文件,因此在打开这类文件时千万要使用二进制模式打开。

python 3 的 open函数比 python 2 中的慢很多,有没有办法优化

12楼:匿名用户

open 不会 for ... in 不会 文件读取貌似只有open(***).read()会一次性读完整个文件内容,其他方式(readlines之类的)都不会,但是corpora.

dictionary 是什么行为就不清楚了