一、感觉上课没有太多的知识。也可以去理解。但是作业太难了。。。
二、hash()
#python里面的哈希类型是在一个程序中不变,如果换了python 哈希是不#一样的。#字典为什么快,因为他把字典中的key变成了哈希值,查找的时候 是通过#查找哈希值找到的。def sayHI(): print('hello world')sayHI()def stu_register(name, age, country, course,*args,**kwargs): print("----注册学生信息------") print("姓名:", name) print("age:", age) print("国籍:", country) print("课程:", course) #print(*args) #print(**kwargs) print('1123',args,kwargs) print(kwargs.get('xuehao','jinqian'))stu_register("王山炮", 22, "CN", "python_devops",'ddddd','lllll',xuehao = 'st112003',jinqian=10000)stu_register("张叫春", 21, "CN", "linux")stu_register("刘老根", 25, "CN", "linux")
三、返回值
# 返回值# 1.一旦你的函数经过调用并开始执行,那你的函数外部程序,就没有办法再控制函数的过程了。# 此时外部程序只能安静的等待函数的执行结果,为啥要等待函数结果,因为外部程序要根据函数的# 执行结果来决定下一步怎么走,这个执行结果就是一retun的形式返回给外部的程序。# 2.return 代表这一个函数的结束。# 3.return 可以返回任意数据类型。# 4.对于用户角度,函数可以返回任意数量的值,但对于py本身来讲,函数只能返回一个值。# 局部变量改全局变量尽量不要用def auth(): username = input('请输入账号') password = input('请输入密码') _username = 'houziyu' _password = '123123' if username == _username and password ==_password: return True else: return False #abc =123 #global abc # 全局变量globaldel
三、递归
#递归#1.必须有一个明确的条件。如果没有明确的条件就是一个死循环def calc(n): print(n) if int(n/2) == 0 : return n return calc(int(n/2))calc(10)
四、二分查找
# 二分查找data = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]def binary_search(datasets,find_num): if len(datasets) >0 : middie_pos = int(len(datasets)/2) if datasets[middie_pos] == find_num: print('find num:',datasets[middie_pos]) elif datasets[middie_pos] > find_num: binary_search(datasets[0:middie_pos],find_num) print('小了') else: binary_search(datasets[middie_pos+1:],find_num) print('大了') else: print('没有找到数字',find_num)binary_search(data,20)
五、三元预算及匿名函数
#三元预算a = 4b = 5d = a if >10 else b#匿名函数def calc(n,j): return n*jcalc2 = lambda x,y:x*yprint(calc(8,9))print(calc2(8,9))def calc(n) : n**ndata=map(lambda n:n*n if n>2 else n ,range(10))for i in data: print(i)#all 除了0都的为真#any 一个为真都为真print(ascii('哈')) #转换成ascii 没啥用忘记吧print(bin(10)) #转换成二进制print(chr(97))print(ord('a'))print(globals()) #把当前程序所在内存里的所有数据都以字典的形式打印出来a = frozenset({1,2,3,4,4}) #让集合只读~f = open('呵呵.py',encoding='utf-8') #相当于importcode = compile(f.read(),'','exec')exec(code)for i in filter(lambda x:x>5 , range(10)): #筛选5以上的 print(i)hex() #求16进制a =[1,2,3,4,5]b =[4.5.6.7.8]for i in zip(a,b): print(i)