python四:函数练习--小白博客
Posted 小白博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python四:函数练习--小白博客相关的知识,希望对你有一定的参考价值。
# 为什么要有函数?
# 函数式编程定义一次,多出调用
# 函数在一定程度上可以理解为变量
# 函数的内存地址加上()就是调用
# 函数本身也可以当做参数去传参
#
#不用函数:
# 组织结构不清晰
# 代码的重复性
def test():#test就是函数名,里面的代码块就是值 print(‘你好‘) print(test) def bar(x):#x叫形参 print(x) bar(‘s‘)#s叫实参 def foo(x, y=2):#y相当于默认值,如果传参数会把y覆盖,如果不传参数默认就是2 print(x + y) foo(x=2,y=9) def bar(*args): print(args)#args返回的是一个元组,args名字可以自定义,*必须有 print(*args) #返回输入值 bar(1,2,3,4,5,6,7,8,‘x‘) def bar(**shenchenlin): print(shenchenlin)#kwargs返回的是一个字典,kwargs名字可以自定义,**是必须有的 bar(name=‘申晨林‘, age=‘25‘) # return 返回,把函数的执行结果返回,return下面的代码不会执行 def test(x, y): return x + y def bar(x,y): return x + y res = bar(test(1,2), 100)
#监控
# 如果c盘使用率超过10%,print(cpu使用率超过10%)
# 如果内存使用率超过80%,print(内存使用率超过80%)
# 如果cpu使用率超过70%,print(cpu使用率超过70%)
import psutil import yagmail info = {} def disk(): disk_total = int(psutil.disk_usage(‘c:‘)[0]/1024/1024/1024) disk_used = int(psutil.disk_usage(‘c:‘)[1]/1024/1024/1024) disk_free = int(psutil.disk_usage(‘c:‘)[2]/1024/1024/1024) disk_percent = psutil.disk_usage(‘c:‘)[3] disk_info = { ‘disk_total‘:disk_total, ‘disk_used‘: disk_used, ‘disk_free‘: disk_free, ‘disk_percent‘: disk_percent } return disk_info def mem(): mem_total = int(psutil.virtual_memory()[0]/1024/1024) mem_free = int(psutil.virtual_memory()[1]/1024/1024) mem_percent = psutil.virtual_memory()[2] mem_used = int(psutil.virtual_memory()[3]/1024/1024) mem_info = { ‘mem_total‘: mem_total, ‘mem_free‘: mem_free, ‘mem_percent‘: mem_percent, ‘mem_used‘: mem_used } return mem_info def cpu(): cpu_percent = psutil.cpu_percent(1) cpu_info = { ‘cpu_percent‘: cpu_percent } return cpu_info def sendmail(subject,contents): yag = yagmail.SMTP(user=‘[email protected]‘, password=‘lizhaoqwe123123‘, host=‘smtp.163.com‘) yag.send(to=‘[email protected]‘, cc=‘[email protected]‘, subject=subject, contents=contents) yag.close() def main(): disk_info = disk() mem_info = mem() cpu_info = cpu() info.update(disk_info) info.update(mem_info) info.update(cpu_info) msg = ‘硬盘总大小:%sG 硬盘使用大小:%sG 硬盘剩余大小:%sG 硬盘使用率:%s%% 内存总大小:%sM 内存剩余大小:%sM 内存使用率:%s%% 内存使用大小:%sM cpu使用率:%s%%‘ % (info[‘disk_total‘],info[‘disk_used‘],info[‘disk_free‘],info[‘disk_percent‘],info[‘mem_total‘],info[‘mem_free‘],info[‘mem_percent‘],info[‘mem_used‘],info[‘cpu_percent‘]) if info[‘disk_percent‘] > 80: sendmail(‘邮件报警‘,msg) if __name__ == ‘__main__‘: main()
if __name__==‘main‘:命令的理解与练习
print(‘恋习Python‘) def main(): print(‘恋习Python‘) if __name__ == ‘__main__‘: main() print(‘跟着菜鸟分析,练习Python越练越恋‘) 其运行原理也就是: 由于每个python模块(python文件)都包含内置的变量__name__, 当运行模块被执行的时候,__name__等于文件名(包含了后缀.py)。 如果import到其他模块中,则__name__等于模块名称(不包含后缀.py)。 而“__main__”等于当前执行文件的名称(包含了后缀.py)。所以当模块 被直接执行时,__name__ == ‘__main__‘结果为真;而当模块被import到 其他模块中时,__name__ == ‘__main__‘结果为假,就是不调用对应的方法。
# 随机生成验证码
import random # 导入模块 def v_code(): # 验证码一般用循环 数字和字母相平的验证码 res="" # 验证码是字符串 首先有个初始值 for i in range(5): #5表示验证码5个随机数 num = random.randint(0,9) # 取到的数字 alf = chr(random.randint(65,90) )#chr chr()函数是输入一个整数【0,255】返回其对应的ascii符号 s = str(random.choice([num, alf]))# 做字符的转换 #res += random.choice([num, alf]) # 让字母和数字随机拼接起来,choice在s1和s2里面随机选择一个。 res +=s # 这是上面步骤的简写 return res # 返回的是字符串平接的结果 print(v_code())# 调用函数
以上是关于python四:函数练习--小白博客的主要内容,如果未能解决你的问题,请参考以下文章