Python基础语法05

一、函数的基本知识

1、函数:

函数是组织好的、可以重复使用的,用来实现特定功能的代码段

2、作用:

可以得到一个针对特定需求的、可供重复利用的代码段,提高程序的复用性,减少重复性代码,提高开发效率。

3、定义:

def 函数名 (传入参数) :

        函数体

        return 返回值

 4、函数的调用:

函数名(参数)

 5、注意事项:

  • 参数如果不需要,可以省略
  • 返回值如果不需要,可以省略
  • 函数必须贤定义后使用

 6、示例:

# 定义一个函数
def say_hello():
    print('hello! i am Seventeeen')
# 调用say_hello函数
say_hello()

二、函数的传入参数

1、传入参数的功能:

在函数进行计算的时候,接受外部(调用时)提供的数据。

2、示例:

# 定义一个函数
def addition(x,y):
    result = x + y
    print(f"{x} + {y} = {result}")
# 调用addition函数
addition(1,2)
print("===========")
x = int(input())
y = int(input())
addition(x,y)

3、语法解析

 
  • 在函数的定义中,提供的x和y,称之为:形式参数(形参),表示函数声明将要使用2个参数。参数之间使用逗号进行分隔。
  • 函数调用中,提供1和2,称之为:实际参数(实参),表示函数执行时真正使用的参数值。传入的时候,按照顺序传入数据,使用逗号分隔

4、注意:

  • 传入参数的数量是不受限制的。(可以不使用参数,也可以使用任意N个参数)

三、函数的返回值

1、定义:

所谓“返回值”,就是程序中函数完成事情后,最后给调用者的结果。

2、语法格式:

def 函数 (参数)

        函数体

        return 返回值

变量 = 函数(参数)

3、示例:

def addition(x,y):
    result = x + y
    return result
# 调用addition函数
n = addition(1,2)
print(n)

3、注意:

函数体在遇到return关键字后就结束了,所以写在return后的代码不会执行 

4、None 类型:

在Python中有一个特殊的字面量:None,其类型是:<class'NoneType'>。无返回值的函数,实际上就是返回了:None这个字面量。

(1)作用:

  • 用在 if 判断中。在 if 判断中,None等同于False,一般用于在函数中主动返回None,配合 if 判断做相关的处理
  • 用于声明无内容的变量上。定义变量,但暂时不需要变量有具体值,可以用None来代替。

(2)示例:

def check(age):
    if age >= 18:
        return "验证成功"
    else:
        return None
result = check(17)
if not result:
    # 进入if表示result是None值,也就是False
    print("你是未成年")

# None 用于声明无初始内容的变量
name = None

五、函数说明文档

ps:红色框内的就是函数的说明文档

注意:在编写代码的时候,可以通过鼠标的悬停,查看条约函数的说明文档

六、函数的嵌套调用

所谓函数的嵌套调用指的是一个函数里面又调用了另一个函数

def fun_2():
    print("方法2")
def fun_1():
    print("方法1")
    fun_2()
    print("方法3")

# 调用fun_1函数
fun_1()

从中可以看出执行的顺序,是从调用的函数开始,从上向下依次的执行。

七、变量的作用域

变量的作用域值得是变量的作用范围(变量在哪里可用,在哪里不可用)。主要分为两类:局部变量和全局变量

(1)局部变量:

1)定义:

定义在函数体的内部的变量,即只在函数体内部生效。

2)作用:

在函数体内部,临时保存数据,即函数调用完成后,则立刻销毁局部变量。

3)演示

def test():
    num = 17
    print(num)

test()
print(num)

注意:出了函数体,局部变量就失效了

(2)全局变量:

1)定义:

指的是在函数体内、外都能生效的变量。

2)示例:

num = 7
def test():
    print(num)

test()
print("====")
print(num)

(3)global 关键字 :

1)在函数内部修改全局变量:

num = 7
def test_1():
    print(num)
def test_2():
    num = 17
    print(num)
test_1()
test_2()
print(num)

ps:根据输出的结果我们可以发现,在函数内部修改全局变量,只会修改该函数内部,此变量的值,并不会对全局变量的值进行改变,当该函数的调用完成后,全局变量的值依旧是原来的值。如果要想在函数的内部修改全局变量的值并且在函数调用完成后,全局变量的值保证是修改后的值,这个时候就要使用到 global 关键字。

2)作用:

在函数内部,声明变量为全局变量。

3)示例:

num = 7
def test_1():
    print(num)
def test_2():
    global num  # 设置内部变量为全局变量
    num = 17
    print(num)
test_1()
test_2()
print(num)

代码解释:程序按照调用的顺序依次的执行,先调用test_1方法,此时全局变量num还是等于7,则会输出7;随后调用test_2方法,此时使用了global 关键字,将全局变量(num)的值更改为17,则第二个的输出的结果为17;最后执行print(num)语句,但是此时num的值已经被修改为了17,所以再次输出17。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值