Python工程师之Python编程:从入门到实践【3.1】

10.2.3 附加到文件

如果要给文件添加内容,而不是覆盖原有的内容,可以以附加模式 打开文件。以附
加模式打开文件时,Python不会在返回文件对象前清空文件的内容,而是将写入文
件的行添加到文件末尾。如果指定的文件不存在,Python将为你创建一个空文件。
下面来修改write_message.py,在既有文件programming.txt中再添加一些你酷爱编
程的原因:
write_message.py
filename = 'programming.txt'
❶ with open(filename, 'a') as file_object:

file_object.write("I also love finding meaning in large datasets.\n")
file_object.write("I love creating apps that can run in a browser.\n")


在❶处,打开文件时指定了实参'a' ,以便将内容附加到文件末尾,而不是覆盖文
件原来的内容。在❷处,又写入了两行,它们被添加到文件programming.txt末尾:
programming.txt
I love programming.
I love creating new games.
I also love finding meaning in large datasets.
I love creating apps that can run in a browser.
最终的结果是,文件原来的内容还在,后面则是刚添加的内容。
动手试一试
练习10-3:访客  编写一个程序,提示用户输入名字。用户做出响应后,将其
名字写入文件guest.txt中。
练习10-4:访客名单  编写一个while 循环,提示用户输入名字。用户输入
名字后,在屏幕上打印一句问候语,并将一条到访记录添加到文件
guest_book.txt中。确保这个文件中的每条记录都独占一行。
练习10-5:调查  编写一个while 循环,询问用户为何喜欢编程。每当用户
输入一个原因后,都将其添加到一个存储所有原因的文件中。

10.3 异常

Python使用称为异常 的特殊对象来管理程序执行期间发生的错误。每当发生让
Python不知所措的错误时,它都会创建一个异常对象。如果你编写了处理该异常的
代码,程序将继续运行;如果未对异常进行处理,程序将停止并显示traceback,其
中包含有关异常的报告。
异常是使用try-except 代码块处理的。try-except 代码块让Python执行指定
的操作,同时告诉Python发生异常时怎么办。使用try-except 代码块时,即便出
现异常,程序也将继续运行:显示你编写的友好的错误消息,而不是令用户迷惑的
traceback。

10.3.1 处理ZeroDivisionError 异常

下面来看一种导致Python引发异常的简单错误。你可能知道,不能用数除以0,但还
是让Python这样做:
division_calculator.py
print(5/0)
显然,Python无法这样做,因此你将看到一个traceback:
Traceback (most recent call last):
File "division_calculator.py", line 1, in <module>
print(5/0)
❶ ZeroDivisionError: division by zero
在上述traceback中,❶处指出的错误ZeroDivisionError 是个异常对象。
Python无法按你的要求做时,就会创建这种对象。在这种情况下,Python将停止运
行程序,并指出引发了哪种异常,而我们可根据这些信息对程序进行修改。下面来
告诉Python࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BinaryStarXin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值