[网络安全学习篇35]:python 模块和函数及异常捕获

引言:我的系列博客[网络安全学习篇]上线了,小编也是初次创作博客,经验不足;对千峰网络信息安全开源的视频公开课程的学习整理的笔记整理的也比较粗糙,其实看到目录有300多集的时候,讲道理,有点怂了,所以我就想到了通过写博客(课程笔记)的形式去学习它,虽然写博客会让我多花几倍的时间去学习它,但是当我完成一篇博客所获得的成就感和你们对于我的认同感,让我很满足,能够鼓励我一天天的坚持下去,也希望和我一起学习本期视频的"同道"们也能给一直坚持下去。我们大家一起加油。由于作者本身也是网络信息安全小白,大部分知识点都是初次接触,出现对其理解不深入,不完整,甚至也会出现错误有问题的地方,希望大家谅解、留言提出指正,同时也欢迎大家来找我一起交流学习!!!

 

往期博客:

第一阶段:

[网络安全学习篇1]:windowsxp、windows2003、windows7、windows2008系统部署(千峰网络安全视频笔记)

[网络安全学习篇24]:漏洞与木马(千峰网络安全视频笔记 p117-p118)

第二阶段:

[网络安全学习篇25]:初识Linux及简单命令

[网络安全学习篇32]:Linux脚本编写汇总及应用

第三阶段:

[网络安全学习篇33]:0基础带你入门python

[网络安全学习篇34]:python文件对象对文件内容进行读取和写入

[网络安全学习篇35]:python 模块和函数及异常捕获(本篇)

下期博文:

[网络安全学习篇36]:python 面向对象编程思想(本篇)

 

目录

 

模块和函数及异常捕获

模块和函数

函数的形参和实参

异常捕获

异常一:ZeroDivisionError

异常二:ValueError

异常三:KeyboardInterrupt和EOFError


模块和函数及异常捕获

 

模块和函数

1、定义模块名称不能以数字kaito

2、不能和默认的模块重名

模块文件必须执行文件在同一目录或者模块文件在lib文件中有效

实例:

print("*"*20)

     hello

print("*"*20)

创建一个功能模块,该模块可以被调用import

在模块中包含一个功能函数,函数的作用返回20个*

创建模块

"""
介绍模块的作用
里面包含的功能
作者的联系方式
"""

star = "**********"
"star变量的作用是赋了10个星号"


def p_star():
    "我的作用返回20个星号"
    return "*"*20

 调用模块

import printstar

#print(help(printstar))
#print(dir(printstar))
#print(help(printstar.p_star))

star20 = printstar.p_star()
print(printstar.star)
print("        hello")
print(star20)

这里同样我们可以使用help()、dir()函数查看模块功能

 

函数的形参和实参

 

函数实现两个数值的除法计算

def division(a,b):
    num = a / b
    return num

numa = int(input("请输入被除数:"))
numb = int(input("请输入除数:"))
endnum = division(numa,numb) 
print(endnum)

实参:numa,numb 

形参:a,b

 

异常捕获

好处:

当我们程序运行时,会不可避免的出现一些异常,比如说用户故意输入错误,导致程序中的某个函数运行崩溃,我们通过捕获程序的异常,对用户的输入进行矫正或警告。

结构:

try:

    被捕获的子语句

except(异常类型1,类型2,。。。):

    pass/print

 

异常一:ZeroDivisionError

上面的除法程序,当我们输出除数为0时,程序报错

那我们如何控制它,不让他报错呢

def division(a,b):
    num = a / b
    return num

numa = int(input("请输入被除数:"))
numb = int(input("请输入除数:"))
try:
    endnum = division(numa,numb)
    print(endnum)
except ZeroDivisionError:
    print("除数不能为0")


异常二:ValueError

还有当我们输入字母时,程序也会报错

def division(a,b):
    num = a / b
    return num
try:
    numa = int(input("请输入被除数:"))
    numb = int(input("请输入除数:"))

    endnum = division(numa,numb)
    print(endnum)
except ZeroDivisionError:
    print("除数不能为0")

except ValueError:
    print("请输入正常的整数")


异常三:KeyboardInterrupt和EOFError

我们直接按下CTRL+D,程序会报以下错误

我们直接按下CTRL+C,程序又会报以下错误

def division(a,b):
    num = a / b
    return num
try:
    numa = int(input("请输入被除数:"))
    numb = int(input("请输入除数:"))

    endnum = division(numa,numb)
    print(endnum)
except ZeroDivisionError:
    print("除数不能为0")

except ValueError:
    print("请输入正常的整数")
except (KeyboardInterrupt,EOFError):
    pass

pass 直接结束


参考文献:

B站千峰网络信息安全开源视频课程

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

beglage

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

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

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

打赏作者

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

抵扣说明:

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

余额充值