Python学习
trackback模块
使用trackback模块打印异常信息
下面是Demo
#测试trackback模块
import traceback
try:
print('step1')
num = 1/0
except:
traceback.print_exc()
#将异常信息输出到指定文件中
try:
print('step2')
num = 1 / 0
except:
with open('d:a.txt','a') as f:
traceback.print_exc(file=f)
E:\python\python37\python.exe E:/python/PycharmProjects/pythonProject4/trackback模块.py
step1
step2
Traceback (most recent call last):
File "E:/python/PycharmProjects/pythonProject4/trackback模块.py", line 6, in <module>
num = 1/0
ZeroDivisionError: division by zero
Process finished with exit code 0
自定义异常类
python中,一切都是对象,实际上,执行def定义函数后,系统就创建了相应的函数对象。
下面是Demo
#测试自定义异常
class AgeError(Exception):
def __init__(self,errorInfo):
Exception.__init__(self)
self.errorinfo = errorInfo
def __str__(self):
return str(self.errorinfo)+'年龄错误应该在1-150之间'
#测试代码
if __name__=='__main__':#如果为True,则模块作为独立文件运行可以执行测试代码
age = int(input('输入一个年龄:'))
if age<1 or age >150:
raise AgeError(age)
else:
print('正常的年龄:',age)‘
E:\python\python37\python.exe E:/python/PycharmProjects/pythonProject4/自定义异常.py
输入一个年龄:200
Traceback (most recent call last):
File "E:/python/PycharmProjects/pythonProject4/自定义异常.py", line 15, in <module>
raise AgeError(age)
__main__.AgeError: 200年龄错误应该在1-150之间
Process finished with exit code 1
pycharm开发环境的调试
进行调试的核心是设置断点,程序执行到断点时,暂时挂起,停止执行,就像看视频按下停止一样,我们可以详细的观看停止处的每个细节
下面是Demo
_file文件操作_操作系统底层关系
创建文件对象open():
文件的写入写入操作:1.创建文件对象 2.写入数据 3.关闭文件对象
下面是Demo
编码知识
常用编码之间的关系
ASCII码,用7位表示,只能表示128个字符
中文乱码问题
下面是Demo
write()/writelines()写入数据
write(a):把字符串a写入到文件中
writelines(b):把字符串列表写入文件中
close()关闭文件流:由于文件底层是由操作系统控制,所以我们打开的文件的文件对象必须显示调用close()方法关闭文件对象,当调用close()方法时,首先把缓冲区数据写入文件也可以直接调用flush()方法在关闭文件。释放文件对象
为了确保打开的文件对象正常关闭,一般结合异常机制的finally或者with关键字实现无论什么情况都能关闭打开的文件对象
下面是Demo
try:
f = open(r'd.txt','w')
strs = ['aa','bb','cc']
f.writelines(strs)
except BaseException as e:
print(e)
finally:
f.close()
#结果
aabbcc