python 入门学习 Day 5

python 入门学习

一周掌握 python 入门知识


学习目标:

开始进入函数变成阶段

1、 函数编程的作用
2、语法定义&特性
3、各种参数
4、函数返回值的作用
5、局部变量和全局变量
6、内置函数


学习内容:

1、 函数编程的作用
将重复的代码封装单独封装起来,起个名字,之后直接调用
2、语法定义&特性

  • 定义:函数就是将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用其函数名即可
  • 特性:1.减少重复代码 2.使程序变得可扩展 3.使程序变得易维护
    在这里插入图片描述
  • 代码示例:
def sayHi(name,age):
    print(f"Hello,my name is {name}.I am {age} year old.")

sayHi("lisa",23)

运行结果:
在这里插入图片描述

3、各种参数

  • 默认参数:
#默认参数
def stu_register(name,age,course,country="CN"):
    print("============注册学生信息==========")
    print(f"姓名:{name}")
    print(f"年龄:{age}")
    print(f"国籍:{country}")
    print(f"课程:{course}")

stu_register("张三",18,"python")
stu_register("lisa",19,"English","ES")
stu_register("李四",18,"linux")

在这里插入图片描述

默认参数的位置很重要

  • 关键参数(指定参数)
    正常情况下,非函数传参数要按顺序,不想按顺序就可以用关键参数,只需要指定参数名即可(指定了参数名的参数就叫关键参数),但是有一个要求:关键参数必须放在位置参数(以位置顺序确定对应关系的参数)之后
    位置参数比关键参数的优先级高
#关键参数
def stu_register(name,age,course,country="CN"):
    print("============注册学生信息==========")
    print(f"姓名:{name}")
    print(f"年龄:{age}")
    print(f"国籍:{country}")
    print(f"课程:{course}")

stu_register("张三",18,country="CN",course="python")
#stu_register("lisa",19,country="ES","English") 报错
stu_register(name="李四",age=18,course="linux")
  • 非固定参数
    若你的函数在定义时不确定用户想传入多少个参数,就可以使用非固定参数
#非固定参数
def stu_register(name,age,*args): #*args 会把多传入的参数变成一个元组形式
    print("============注册学生信息==========")
    print(name,age,args)

stu_register("张三",18,"python")
stu_register("lisa",19,"English teacher",18700814407)
stu_register("李四",18,"man")

在这里插入图片描述

def stu_register(name,age,*args,**kwargs): #*args 会把多传入的参数变成一个元组形式;kwargs就会是个字典形式
    print("============注册学生信息==========")
    print(name,age,args,kwargs)

stu_register("张三",18,"python",add="陕西西安")
stu_register("lisa",19,"English teacher",Tel=18700814407,sex="woman")

在这里插入图片描述

4、函数返回值的作用
函数外部的代码想获取函数的执行结果

#函数返回值
def func(x,y):
    return x*y

result=func(3,4)
print(result) #12

也可以返回多个值;如果未在函数中指定return,那函数的返回值就是None;return代表着函数的结束

def stu_register(name,age,*args,**kwargs):
    print("============注册学生信息==========")
    print(name,age,args,**kwargs)
    if age >14:
        return name,age,args,kwargs
    else:
        return false

stu_register("张三",18,"python","CN")

在这里插入图片描述

5、局部变量和全局变量

#局部&全局变量
name="lisa"
def change():
    name=input("新名字:")
    print("改了后:",name)

change()
print("外部:",name)

在这里插入图片描述
局部变量:只在函数内部生效,函数结束就销毁了,作用域仅在函数
全局变量:在程序一开始定义的变量,作用域是整个程序
变量的查找顺序:局部变量>全局变量
在函数内不能直接修改到全局变量,除非声明一个全局变量(但是不建议使用)

name="lisa"
def change():
    global name
    name=input("新名字:")
    print("改了后:",name)

change()
print("外部:",name)

在这里插入图片描述

给函数传递列表、字典的现象

#传列表、字典
d={"name":"张三","age":18,"country":"中国"}
l=["lisa","rose","jenne"]

def change(info,idol):
    info["country"]="新加坡"
    idol.append("jisoo")

change(d,l)
print(d)
print(l)

在这里插入图片描述

因为变成了地址传递了,类似于c的指针传递

6、内置函数
在这里插入图片描述
在这里插入图片描述


学习产出:

练习:学籍注册小程序
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值