python-函数

Posted 代码脱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-函数相关的知识,希望对你有一定的参考价值。

1、函数:

def greet(name):  #定义函数def
print("hello "+name)

greet("lele")
在本程序中, name 是形参(函数为完成其工作所需的一项信息),在调用本函数时,greet(“lele”)其中的“lele”作为实参(调用函数时传递的函数信息)。
1.1 位置参数 vs 关键字参数
def greet(name,sex):  #定义函数def
print("hello "+name+" "+sex)

greet("lele","male")
greet( "male","lele")
greet( sex= "male", name = "lele")
位置参数传递时,必须保证实参和形参的位置一一对应,否则结果会出现问题,关键字参数则不用在乎顺序。
输出结果:

hello lele male
hello male lele
hello lele male

  1.2  默认参数   

def greet(name,sex="female"):  #定义函数def
print("hello "+name+" "+sex)
greet("lele")
greet( "lele","male")
greet( sex= "male", name = "lele")
在定义函数时,已经为形参指定了默认值,则调用函数时不传递实参,将使用默认值,若传递实参,则将覆盖默认值。
输出结果:

hello lele female
hello lele male
hello lele male

1.3 返回值

def get_formatname(first_name,last_name):
full_name = first_name +" "+ last_name
return full_name

while True:
f_name = input("Please input yout first_name:")
if f_name == "q":
break

l_name = input("Please input your last_name:")
if f_name == "q":
break

format_name = get_formatname(f_name,l_name)
print("hello "+ format_name)

通过shou_mag()的定义通过形参 first_name,last_name 接受名和姓,并将其合在一起,存在变量 full_name中,并将结果返回到函数调用行中。

 

1.4 函数  传递列表 

def shou_mag(name_list):
#一个个的删除name_list中的值,并将其存储在心得列表中the_great
while name_list:
names = name_list.pop() #将原来的列表删除
print(names)
the_great.append(names)

def make_great(great):
#在列表中的每个元素前加上“the great”
for obj in great:
print("the great "+obj)

name1 = ["lele","ningning"]
the_great= [ ]

shou_mag(name1)
make_great(the_great)
print(name1)

输出结果:

ningning
lele
the great ningning
the great lele
[   ]

可以发现最后name1 变为一个空列表,因为调用pop() 时已经将原列表中的元素一个个的删除,如果想保留原来的name1 列表,可将

shou_mag(name1) 修改为   shou_mag(name1[:])

输出结果:

ningning
lele
the great ningning
the great lele
[‘lele‘, ‘ningning‘]

2、任意的位置实参和关键字实参

def make_love(*args,**kwargs):
‘定义了一个可以接收多个位置实参和关键字实参的函数‘
make = []
‘创建一个空列表用于接收位置参数‘
for i in args:
make.append(i)
love = { }
‘创建一个空字典用接手关键参数‘
for key,value in kwargs.items():
love[key] = value
return make,love
love_make = make_love(0,1,2,3,4,5,name="jjj",age= 25,school ="xjtu")
print(love_make)
其中的*args 是将所有的位置实参存储在args元组中,**kwagrs是将所有的位置参数存储在kwargs的空字典中。
 















































































以上是关于python-函数的主要内容,如果未能解决你的问题,请参考以下文章

python使用上下文对代码片段进行计时,非装饰器

python 元组有用的函数,方法和片段。

Python代码阅读(第26篇):将列表映射成字典

VSCode自定义代码片段——声明函数

Python学习 :函数

VSCode自定义代码片段8——声明函数