文件读写和异常(Python)
2018-02-13 19:43
246 查看
读取文件
例:
关键字with在不再需要访问文件后将其关闭
方法read()读取这个文件的全部内容
写入文件
如果要写入的文件不存在,将自动创建。在以写入(‘w’)模式打开文件时要小心,因为如果指定的文件已经存在,Python将在返回文件对象前清空该文件。
写入多行时文本文件中不会因为print换行,因此在代码中要指定换行符\n
异常
每当发生让Python不知所措的错误时,它都会创建一个异常对象。异常是使用try-except代码块处理的。
处理ZeroDivisionError异常
一个简单错误:除以数字0,将会出现报错,这时我们可以使用try-except代码块来处理可能引发的异常
例:
try-except-else代码块:try代码块成功执行时才需要运行的代码放在else代码块中
处理FileNotFoundError异常
要处理这个错误:
filename = 'alice.txt'
try:
with open(filename) as f_obj:
contents = f_obj.read()
except FileNotFoundError:
msg = "Sorry, the file " + filename + " does not exist."
print(msg)将会显示Sorry, the file alice.txt does not exist.
失败时一声不吭:在except代码块中明确地告诉Python什么都不要做。即pass语句
存储数据
模块json让你能够将简单的Python数据结构转储到文件中,json采用完全独立于编程语言的文本格式来存储和表示数据。
使用json.dump()和json.load()
例:
使用函数json.dump()将数字列表存储到文件numbers.json中
json.dump()接受两个实参:要存储的数据以及可用于存储数据的文件对象。
接下来再编写一个程序,使用json.load()将这个列表读取到内存中
接上面程序:
例:
with open('D://Develop//new.txt') as file_object: contents=file_object.read() print(contents)函数open()打开文件返回一个表示文件的对象存储在后面使用的变量中,它接受一个参数:要打开文件的名称,如果文件在当前执行的文件所在的目录中,则直接传入文件的名称,否则还需要指定文件的路径,这叫绝对文件路径。
关键字with在不再需要访问文件后将其关闭
方法read()读取这个文件的全部内容
写入文件
filename='programming.txt' with open(filename,'w') as file_object: file_object.write("I love programming.")在这个示例中,调用open()时提供了两个实参。第一个实参是要打开的文件的名称,第二个实参‘w’告诉Python,我们要以写入模式打开这个文件。打开文件时,可指定读取模式(‘r’)、写入模式(‘w’)、附加模式(‘a’;给文件添加内容,而不是覆盖原有的内容)或让你能够读取和写入的模式(‘r+’)。如果省略模式实参,Python将默认的只读模式打开文件。
如果要写入的文件不存在,将自动创建。在以写入(‘w’)模式打开文件时要小心,因为如果指定的文件已经存在,Python将在返回文件对象前清空该文件。
写入多行时文本文件中不会因为print换行,因此在代码中要指定换行符\n
异常
每当发生让Python不知所措的错误时,它都会创建一个异常对象。异常是使用try-except代码块处理的。
处理ZeroDivisionError异常
一个简单错误:除以数字0,将会出现报错,这时我们可以使用try-except代码块来处理可能引发的异常
例:
try: print(5/0) except ZeroDivisionError: print("You can't divide by zero!")如果try代码块中的代码运行起来没有问题,Python将跳过except代码块;否则Python将查找这样的except代码块并运行其中的代码
try-except-else代码块:try代码块成功执行时才需要运行的代码放在else代码块中
处理FileNotFoundError异常
filename = 'alice.txt' with open(filename) as f_obj: contents = f_obj.read()若文件不存在,将引发一个FileNotFoundError异常
要处理这个错误:
filename = 'alice.txt'
try:
with open(filename) as f_obj:
contents = f_obj.read()
except FileNotFoundError:
msg = "Sorry, the file " + filename + " does not exist."
print(msg)将会显示Sorry, the file alice.txt does not exist.
失败时一声不吭:在except代码块中明确地告诉Python什么都不要做。即pass语句
存储数据
模块json让你能够将简单的Python数据结构转储到文件中,json采用完全独立于编程语言的文本格式来存储和表示数据。
使用json.dump()和json.load()
例:
import json numbers=[2,3,5,7,11,13] filename='numbers.json' with open(filename,'w') as f_obj: json.dump(numbers,f_obj)使用文件扩展名.json来指出文件存储的数据为JSON格式。
使用函数json.dump()将数字列表存储到文件numbers.json中
json.dump()接受两个实参:要存储的数据以及可用于存储数据的文件对象。
接下来再编写一个程序,使用json.load()将这个列表读取到内存中
接上面程序:
with open(filename) as f_obj: a=json.load(f_obj) print(a)使用函数json.load()加载存储在numbers.json中的信息,并将其存储到变量a中
相关文章推荐
- python 文件读写异常 [已解]
- Python(3):文件读写与异常
- Python文件的读写和异常代码示例
- Python基础操作 文件的读写 异常模块 类面向对象 时间日历
- python自动化--语言基础四模块、文件读写、异常
- 【Python】[IO编程]文件读写,StringIO和BytesIO,操作文件和目录,序列化
- 《head first python》——文件与异常
- Python读写CSV文件--追加方式多空行
- Python 读写文件和file对象
- Python -- 9. 文件和异常
- Python自动化测试 (二) ConfigParser模块读写配置文件
- python-打开文件与读写文件
- python学习笔记之编写readConfig读写配置文件
- 1、python文件读写练习
- python 读写文件时,r、rt、rb、r+的区别
- Python_文件对象类型及其读写函数详解
- Python文件操作读写文件
- Python读写txt文本文件
- python 读写csv文件(一)
- 处理Python2.7读写文件中的中文乱码问题