python-----------异常处理和模块引用

本文深入探讨Python中的异常处理机制,包括try-except-else-finally语句的使用,以及如何通过调用栈定位错误。同时,介绍了模块引用的概念,如何引入第三方模块扩展功能,避免代码重复,提高代码维护性和模块间引用的方法。

异常处理

'''
异常
'''
try:
    print("-----------开始-----------------")
    a = 100/0
    print(a)
except ValueError as e:
    print("错误信息:",e)
except ZeroDivisionError as e:
    print("错误信息:", e)
except Exception as e:
    print("错误信息:",e)
else:
    print("错误信息:未知")
finally:
    print("------------结束--------------")


'''
    调用栈 下面的报错信息,就相当于是一个调用栈,从34--》27--》24一步一步定位到错误的位置并打印错误信息
    Traceback (most recent call last):
        File "D:/PyCharm/Project/TestOne/异常处理.py", line 34, in <module>
    bar('0')
         File "D:/PyCharm/Project/TestOne/异常处理.py", line 27, in bar
        return foo(s)*2
     File "D:/PyCharm/Project/TestOne/异常处理.py", line 24, in foo
         return 100/int(s)
        ZeroDivisionError: division by zero
        
        
def foo(s):
    return 100/int(s)
def bar(s):
    return foo(s)*2
#main函数,如果当前文件是单独执行的 则__name__ == '__main__',如果当前文件被其他模块引入调用的时候就不等于了
if __name__ == '__main__':
    bar('0')
'''

'''
    自己定义一个 调用栈
'''

def foo(s):
    return 100 / int(s)

def bar(s):
    return foo(s) * 2

# main函数,如果当前文件是单独执行的 则__name__ == '__main__',如果当前文件被其他模块引入调用的时候就不等于了
if __name__ == '__main__':
   try:
        bar('0')
   except Exception as e:
        print(e)
   finally:
       print('finally...........')


 

模块引用

#!/usr/bin/env python3 针对非windows(linux,uninx)运行环境所添加的
#-*-coding:utf-8-*-
'在py脚本开头我们写如上的两句语句是为了指定运行环境和编码'

'''
引入 第三方模块 扩展自己的功能

一个.Py文件称之为一个模块(Module)
• 好处:
1. 便于代码维护,把很多函数放到不同文件,一个.py文件的 代码数量少
2. 一个模块可以被其他地方引用,代码不必从零写起
3.使用模块还可以避免函数名和变量名冲突。相同名字的函数和变量完全可以分别存在不同的模块中
'''

'说明模块用途的地方'
__author__ ='fxg'
def test():
    print('test()调用成功')

if __name__ == '__main__':
    test()
#新建包的时候会自动生成一个__init__.py的文件,是必须的
from Test_Package.my1 import my1_test
my1_test()


'''
安装第三方模块
    1.pip install Pillow(后期可能会出现版本不正确的问题)
    2.使用Python的另一个发行版本,Anaconda(国内网速原因经常可能会断)
    3.Pycharm 里面安装
'''

 

模块引用中有一个引用另一个文件中的对应的方法 所对应的包结构  如下图所示:

 

pycharm中引入安装其他模块的位置下图:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值