Python - 函数

函数(function)是可重用的的代码块:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()
  • 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号 : 起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方,不带表达式的 return 相当于返回 None
  • 调用函数的格式:函数名()

一、调用函数之前,必须先定义函数,即先调用def定义函数对象:

  • 内置函数对象会自动创建。
  • 标准库和第三方库,在import导入模块时,会执行模块中的def语句。

二、程序的执行顺序:

def test():
    '''函数执行顺序'''
    print("第一个打印")
    print("第二个打印")
test()

    这个程序的执行顺序:

  1. 知道有test01这个函数,但不执行其内容
  2. 走到test(),执行该函数
  3. 打印:第一个打印
  4. 打印:第二个打印

    如果下面这样写就会报错:

test()
def test():
'''写法有误函数'''
    print("第一个打印")
test()

   这个程序的执行顺序:

  1. 执行test()这个函数,但是已读信息的没有定义这个函数,所以报错。

三、形参和实参:

def test(a):
"""形参,实参"""
    print(a)
test(10)

 

  • 形参:在定义函数用的a
  • 实参:调用函数时传的实际值10

四、return返回值:

  • 如果函数中语句执行到return语句,则结束函数执行并返回return后方内容。

  • 如果函数中不包含return语句,则返回None值。

  •  要返回多个返回值,使用列表、元组、字典、集合将多个值“存起来”即可。

五、将函数的地址给另一个变量,感觉像类的实例化

def test():
        print('打印输出')
c = test01
c()    
# 结果和test()的执行结果是一样的

六、传递可变对象的引用

a = [1,2,3,4]    # a是可变对象
def test(m):    # a和m是同一对象,也就是引用的一个值,修改也是修改的同一个对象的值
    m.append(15)
    print(m)

test(a)
print(a)
[1, 2, 3, 4, 15]
[1, 2, 3, 4, 15]
a = [1,2,35]
b = a
b.append(56)

print(a)
print(b)
    
[1, 2, 35, 56]
[1, 2, 35, 56]

七、传递不可变对象

a = 100    
b = a       # 这时引用的还是一个地址
b += 200    # 由于a为不可变对象,所以此时新建对象,生成新引用
print(a)
print(b)
    
100
300

八、全局变量和局部变量

定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。

调用函数时,所有在函数内声明的变量名称都将被加入到作用域中。

    

九、各种函数

  • 内置函数:list(),len(),str(),可以拿来直接用
  • 标准库函数:可以通过import直接导入的库,然后使用其中定义的函数
  • 第三方库函数:Python社区中提供的高质量库,通过下载安装库,也可以import使用
  • 用户自定义的函数:就是def定义的

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秦朝胖子得加钱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值