python 函数,函数中的参数,返回值

如何定义一个函数
def hello():
print(‘python’)
print(‘hello’)

#通过函数名来调用函数
hello()
hello()

在这里插入图片描述
在一个函数内可调用另一个函数
在这里插入图片描述

函数中的参数

#定义函数的时候的变量 叫形参(名字任意)
#a是形参
def welcome(a):
print(‘welcome’,a)
#真实的数据信息,调用函数的时候 传递 叫实参
#‘tom’,'lily’是实参
welcome(‘tom’)
welcome(‘lily’)

在这里插入图片描述

#位置参数:形参和实参必须保持位置对应,不然会错乱
def getinfo(name,age):
print(‘姓名:’,name,‘年龄:’,age)
getinfo(‘westos’,11)
getinfo(11,‘westos’)
#也可以直接用形参直接定义
getinfo(age=11,name=‘westos’)

在这里插入图片描述

#默认参数,有实参输入则为实参,无实参输入则为设定的默认值
def mypow(x,y=2):
#参数y有输入为输入值,无输入默认为2
print(x ** y)
mypow(2,3)
mypow(2)

在这里插入图片描述

#可变参数:只能是元组类型

def mysum(*a):
print(*a)
print(type(a))
print(a)
sum = 0
for item in a:
sum += item

print(sum)

mysum()

在这里插入图片描述

其他类型会报错

在这里插入图片描述

可以使用参数解包功能

在这里插入图片描述

#关键字参数:形参和实参位置必须保持一致,字典可以没有,它会默认为空字典,返回为None
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

函数的返回值

返回值:函数运算的结果,当还需要进一步操作是,用return来返回
函数的执行结果,如果没有返回值,默认为None
一旦遇到return,函数执行结束,后面的代码不会执行
多个返回值的时候,python会帮我们封装成一个元组类型
def mypow(x,y=2):
# print(xy,x+y)
return x
y,x+y
a = mypow(5,2)
print(a)
print(mypow(5,2))

在这里插入图片描述

变量的作用域

局部变量:在函数内部定义的变量,只在函数内部起作用,函数执行结束,变量会自动删除
全局变量:定义在函数外的拥有全局作用域,且全局变量可以在整个程序范围内访问

a = 1 #这是一个全局变量
print(‘outside:’,id(a))
def f():
global a #将其函数局部变量a声明为全局变量,这个一般不使用;
a = 5
print(‘inside:’,id(a))
f()
print(a)
print(id(a)) #其函数局部变量a声明为全局变量的存储地址

根据id可以判断出,最后函数外输出的a不是原本函数外的a,而是在函数内重新被定义的a

在这里插入图片描述

不声明为全局变量的话,最后输出的a是原本函数外的a,与函数里的a不是同一个变量

在这里插入图片描述

练习:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值