python——课堂笔记😻

混合传递😸

  1. 位置参数,默认参数,*args,关键字-only参数,**kwargs
  2. 仅关键字参数
  3. 定义优先级
Python 复制代码
# ---------5、混合传递---------
# 位置参数,默认参数,*args,关键字-only参数,**kwargs
# 仅关键字参数
# 定义优先级
print("-----混合传递-----")
def func(a,b=2,*args,c,**kwargs):
    print(a,b,args,c,kwargs)

# 正确调用
func("A","B","Math","Science",c="C",city="Hubei")

# 错误调用1:缺少必要的关键字参数
# func("A","B","Math","Science")
# 错误调用2:重复传参
# func("A",b="B",e = "Math",b=16)
# 错误调用3:位置参数在关键字参数之后
# func(a="A",b="B","Math","Science")

返回值😽

  1. return语句会在函数结束时将数据返回给程序
  2. 一个变量接收两个返回值
Python 复制代码
# ---------------------返回值--------------------
# return语句会在函数结束时将数据返回给程序
print("---------------返回值---------------")
students = []
def add_student(name, age, grade, student_id =None):
    if student_id is None:
        student_id = len(students) + 1001
    student = {
        "name":name,
        "age":age,
        "grade":grade,
        "id":student_id
    }
    students.append(student)
    print(f"成功添加学生:{name}(id:{student_id})")
    return student


c = add_student("FanXianLian",25,25)
print(students)
print(c)

def move(x,y,step):
    nx = x + step
    ny = y - step
    return nx, ny

# 一个变量接收两个返回值
print("----一个变量接收两个返回值------")
result =move(100,100,60)
print(result)
print("------两个变量接收两个返回值------")
a,b = move(100,100,60)
print(f"a={a},b={b}")

变量作用域😼

  1. 变量不能在程序任何位置进行访问
  2. 函数内部定义的变量,内部能访问,外部不行
  3. 函数间的局部变量相互独立、互不影响
python 复制代码
# ---------------------变量作用域--------------------
# 变量不能在程序任何位置进行访问
print("----------变量作用域----------")
# ------局部变量------
# 函数内部定义的变量,内部能访问,外部不行
print("------局部变量------")
def test_one():
    number = 10          # 局部变量
    print(number)        # 内部可以访问局部变量
test_one()           
# print(number)          # 外部无法访问局部变量
# 2、函数间的局部变量相互独立、互不影响
def test_two():
    number = 20          # 和test_one的局部变量不一样
    print(number)
test_two()

全局变量

  1. 全局变量可以在整个程序进行访问
  2. 该全局变量在函数内部只能访问,不能修改
python 复制代码
#--------------------全局变量-------------------
print("-----全局变量-----")
# 1、全局变量可以在整个程序进行访问
number = 10
def test_one():
    print(number)       # 内部可以访问全局变量
test_one()
print(number)


# 2、该全局变量在函数内部只能访问,不能修改
number = number + 10
# def test_two():
#    print(number)
#    number = number + 1
test_two()
print(number)

学生管理系统🙀

Python 复制代码
# ===============================学生管理系统================================
students = []
# 1、显示学生管理系统菜单
def show_menu():
    """显示学生管理系统菜单"""
    print("--------------------------------------")
    print("|1. 添加学生信息")
    print("|2. 查询学生信息")
    print("|3. 查询学生总数")
    print("|4. 退出系统")
    print("--------------------------------------")

def add_student(name, age, grade, student_id =None):
    if student_id is None:
        student_id = len(students) + 1001
    student = {
        "name":name,
        "age":age,
        "grade":grade,
        "id":student_id
    }
    students.append(student)
    print(f"成功添加学生:{name}(id:{student_id})")

def find_student(student_id):
    for student in students:
        if student["id"] == student_id:
            return student
    return None

def count_student():
    """返回学生总数"""
    return len(students)
相关推荐
西部秋虫3 小时前
YOLO 训练车牌定位模型 + OpenCV C++ 部署完整步骤
c++·python·yolo·车牌识别
18你磊哥4 小时前
chromedriver.exe的使用和python基本处理
开发语言·python
闲人编程4 小时前
Python的抽象基类(ABC):定义接口契约的艺术
开发语言·python·接口·抽象类·基类·abc·codecapsule
vx_dmxq2114 小时前
【微信小程序学习交流平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·python·mysql·微信小程序·小程序·idea
无垠的广袤5 小时前
【工业树莓派 CM0 NANO 单板计算机】本地部署 EMQX
linux·python·嵌入式硬件·物联网·树莓派·emqx·工业物联网
艾莉丝努力练剑5 小时前
【Python基础:语法第一课】Python 基础语法详解:变量、类型、动态特性与运算符实战,构建完整的编程基础认知体系
大数据·人工智能·爬虫·python·pycharm·编辑器
gCode Teacher 格码致知6 小时前
Python基础教学:如何拼接字符串?-由Deepseek产生
python
还债大湿兄6 小时前
阿里通义千问调用图像大模型生成轮动漫风格 python调用
开发语言·前端·python
blank@l6 小时前
python测开小工具--日志查询分析工具
python·python接口自动化测试基础·python测试开发·日志查询分析·日志分析统计查询·软件测试工具·argparse模块