区块链技术博客
www.b2bchain.cn

全栈python第十天

这篇文章主要介绍了全栈python第十天的讲解,通过具体代码实例进行22690 讲解,并且分析了全栈python第十天的详细步骤与相关技巧,需要的朋友可以参考下https://www.b2bchain.cn/?p=22690

本文实例讲述了2、树莓派设置连接WiFi,开启VNC等等的讲解。分享给大家供大家参考文章查询地址https://www.b2bchain.cn/7039.html。具体如下:

目录

 

函数提高

学员系统

函数加强


函数提高

  • 变量作用域                                             局部变量和全局变量

  • 多函数可执行流程
  • 函数的返回值
  • 函数的参数
  • 拆包和交换两个变量的值
  • 引用
  • 可变和不可变类型

 

全栈python第十天

 

学员系统

# 添加学员 # 删除学员 # 修改学员 # 查询学员 # 显示所有学员 # 退出系统 list_ = []   def printStr(say):     print(say)   def showView():     """     展示     :return:     """     printStr("请选择功能---------------------")     printStr("1 添加学员")     printStr("2 删除学员")     printStr("3 修改学员")     printStr("4 查询学员")     printStr("5 显示所有学员")     printStr("6 退出系统")   def addStudent(dic_):     """     添加     :param dic_: 学员信息     :return:     """     global list_     list_.append(dic_)     printStr(f"学员{dic_.get('name')}添加成功!")   def addInput():     """     输入添加     :return:     """     name = input("请输入名字:")     if checkStudent(name):         printStr("已经存在同样的名字了")         return      age = input("请输入你的年龄:")     sex = input("请输入你的性别:")     addStudent({"name": name, "age": int(age), "sex": sex})   def delStudent():     """     删除     :return:     """     name = input("请输入名字:")     if not checkStudent(name):         printStr(f"不存在这个学员{name}")         return     global list_     for i in list_:         if i.get("name") == name:             del i             break     printStr(f"学员{name}删除成功!")   def changeStudentInfo():     """     修改     :return:     """     name = input("请输入名字:")     if not checkStudent(name):         printStr(f"不存在这个学员{name}")         return     global list_     for i in list_:         if name == i.get("name"):             i["name"] = input("请输入名字:")             i["age"] = input("请输入年龄:")             i["sex"] = input("请输入性别:")             break   def checkStudent(name):     """     检查系统名字     :param name: 名字     :return: 是否存在     """     booleanName = False     for item in list_:         var = item.get("name")         if var == name:             booleanName = True             break     return booleanName   def showAllStudents():     if len(list_) == 0:         print("暂时还不存在学员")         return     for item in list_:         print(f"""{item["name"]} {item["age"]} {item["sex"]}""")   def checkStudentInfo():     name = input("请输入你要查询的名字:")     if not checkStudent(name):         print(f"不存在这个人{name}")         return     for i in list_:         if i.get("name") == name:             print(f"""{i["name"]} {i["age"]} {i["sex"]}""")             break   def mainStart():     while True:         showView()         index = input("请输入选择:")         print("--------------------------------------")         if index == "1":             addInput()         elif index == "2":             delStudent()         elif index == "3":             changeStudentInfo()         elif index == "4":             checkStudentInfo()         elif index == "5":             showAllStudents()         elif index == "6":             return         else:             print("不能识别输入符,请按正确输入")         print("--------------------------------------")   mainStart()

 

函数加强

递归

3以内的数字求和

# 3以内的数字求和 def sum_for(num):     if num == 1:         return 1     return num + sum_for(num - 1)   var = sum_for(5) print(var)

 

 

lambda表达式

如果一个函数有一个返回值 并且只有一句代码 可以用lambda简化

def sumT(a, b):     return a + b   print(sumT(2, 3))  var = lambda a, b: a + b print(var(2, 3))

 

 

高阶函数

把函数当作参数传入就是高阶函数

# 高阶函数 def sumAbs(a, b, f):     return f(a) + f(b)   print(sumAbs(3, -6, abs))

内置的高阶函数

map(func,list) 把方法作用于列表中每个元素,返回一个新的python2列表,python3返回迭代器

def doubleSum(a):     return a ** 2   list_2 = [1, 2, 3, 4] resT = map(doubleSum, list_2) print(list(resT))

 

reduce(func,list) 把方法作用于列表中每个元素,把方法返回的值求和

import functools   def subNumber(a, b):     return a - b   varLuce = functools.reduce(subNumber, list_2) print(varLuce)

 

filter 过滤序列

本文转自互联网,侵权联系删除全栈python第十天

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 全栈python第十天
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们