2020-09-29write()/writelines()写入数据编码知识_file文件操作_操作系统底层关系pycharm开发环境的调试 自定义异常类trackback模块

本文介绍了Python中的异常处理,包括使用trackback模块打印和记录异常信息,以及如何自定义异常类。此外,还讲解了在PyCharm环境中进行调试的方法。在文件操作部分,讨论了打开、写入和关闭文件的相关函数,如write()和writelines()。最后,提到了编码知识和不同编码之间的关系。
摘要由CSDN通过智能技术生成

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值