python打不开文件怎么回事,做好的python文件直接打开怎么不能用
1.打开文件
用open(pi_digits.txt )作为file_object:
内容=file_object.read()
打印(目录)
open()函数接受一个参数:要打开的文件的名称。Python在当前执行的文件所在的目录中查找指定的文件。函数的作用是:返回一个代表文件的对象。要让Python打开一个与程序文件不在同一个目录下的文件,需要提供一个文件路径,这个路径允许Python到系统中的特定位置去找到它。
关键字with在不再需要访问文件时关闭该文件。在这个程序中,注意我们调用open()而不是close();也可以调用open()和close()来打开和关闭文件,但是在这样做的时候,如果程序中有bug导致close()语句无法执行,文件就不会被关闭。
使用表示pi_digits.txt的file对象,我们使用read()(上述程序的第2行)方法读取该文件的全部内容,并将其作为长字符串存储在变量contents中。这样,通过打印内容的值,可以显示该文本文件的所有内容:
与原始文件相比,此输出的唯一不同之处是末尾有一个空行。为什么会多一个空行?因为read()到达文件末尾时返回空字符串,显示时是空行。要删除多余的空行,请在print语句中使用rstrip()。
用open(pi_digits.txt )作为file_object:
内容=file_object.read()
print(contents . rst rip()2.逐行读取
filename=pi_digits.txt
用open(filename)作为file_object:
对于file_object中的行:
打印(行)
每个输出行的中间会有一个空行,因为在这个文件中,每行的末尾都有一个看不见的换行符,并且在print语句中增加了一个换行符,所以每行的末尾有两个换行符:一个来自文件,另一个来自print语句。要消除这些多余的空行,可以在print语句中使用rstrip ():3.写入文件。
filename=programming.txt
用open(文件名, w )作为file_object:
file_object.write("我热爱编程。")
指定可读模式( R )、写模式( W )、附加模式( A )或允许您读写文件的模式( R )。如果省略schema参数,Python将以默认的只读模式打开文件。
如果你想写的文件不存在,open()函数会自动创建它。但是,在write (W )模式下打开文件时要小心,因为如果指定的文件已经存在,Python会在返回file对象之前清空它。Python只能将字符串写入文本文件。要在文本文件中存储数字数据,必须首先使用函数str()将其转换为字符串格式。
如果要向文件中添加内容而不是覆盖原始内容,可以在附加模式下打开文件。当您在append模式下打开一个文件时,Python不会在返回file对象之前清空文件,您写入文件的行将被添加。
到文件的末尾。如果指定的文件不存在,Python将为您创建一个空文件。
filename=programming.txt
用open(文件名, a )作为file_object:
file_object.write("我也喜欢在大型数据集中寻找意义。\n”)
file_object.write("我喜欢创建可以在浏览器中运行的应用程序。\n")存储数据
Json模块使您能够将简单的Python数据结构转储到文件中,并在程序再次运行时将数据加载到文件中。还可以使用json在Python程序之间共享数据。更重要的是,JSON数据格式不是特定于Python的,这使您能够与使用其他编程语言的人共享以JSON格式存储的数据。
json.dump()函数接受两个参数:要存储的数据和可用于存储数据的file对象。下面演示了如何使用json.dump()存储数字列表。
导入json
数字=[2,3,5,7,11,13]
filename=numbers.json
用open(文件名, w )作为f_obj:
json.dump(数字,f_obj)
让我们先导入模块json,
创建另一个数字列表。
在,我们指定了要在其中存储数字列表的文件的名称。通常是文件扩展名。json用于表示文件中存储的数据是JSON格式的。
接下来,我们以写模式打开这个文件,以便json可以向其中写入数据(请参见)。在,我们使用函数json.dump()将数字列表存储在numbers.json文件中
这个程序没有输出,但是我们可以打开numbers.json文件并查看它的内容。的数据存储格式与Python中的相同:
[2, 3, 5, 7, 11, 13]
下面是另一个使用json.load()将这个列表读入内存的程序:
导入json
filename=numbers.json
用open(文件名)作为f_obj:
数字=json.load(f_obj)
打印(数字)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。