python函数

定义函数

def 函数名(形参):
函数体

传递实参

传递多个参数时,一定要注意顺序,但是如果使用关键字实参,可以打乱顺序。

def name(first_name,last_name):
	print("name:"+first_name.title()+" "+last_name.title())
name(last_name="ming",first_name="li")
name("li","ming")

输出结果
输出结果

使用默认值

直接给形参赋初值,即为默认值,但是如果后面实参重新赋值,那么就忽略形参初始值

def name(first_name,last_name="ming"):
	print("name:"+first_name.title()+" "+last_name.title())
name('li')
name('li','si')

输出结果:
在这里插入图片描述

返回值

让实参变得可选
#人的名字并非所有人都有中间名
def name(first_name,last_name,middle_name=""):
	if middle_name:
		name=first_name+" "+middle_name+" "+last_name
	else:
		name=first_name+" "+last_name
	return name.title()
print(name("li","si"))
print(name("wang","zi","ma"))

输出结果:
输出结果

返回字典
#返回一个人的信息,并且让里面的部分内容可选
def build_person(first_name,last_name,age=""):
	person={"first name":first_name,"last name":last_name}
	if age:
		person['age']=age
	return person
print(build_person('li','si',18))		

输出结果:
输出结果

传递列表

#传递一个名字列表
def greet_users(names):
	for name in names:
		print("Hello "+name.title())
names=['asd','sdg','zxc']
greet_users(names)
#修改列表
def greet_users(names,new_names):
	while names:
		current_name=names.pop()
		print(current_name.title())
		new_names.append(current_name)
	return new_names
names=['asfx','werd','fghxc']
new_names=[]
greet_users(names,new_names)
print(new_names)

输出结果:
输出结果
如果想要保存原列表,只需要在调用函数时,将实参改为切片

#修改列表
def greet_users(names,new_names):
	while names:
		current_name=names.pop()
		print(current_name.title())
		new_names.append(current_name)
	return new_names
names=['asfx','werd','fghxc']
new_names=[]
greet_users(names[:],new_names)		#此处换为切片
print(new_names)
print(names)

输出结果:(按原来方法,names应该变成一个空列表)
输出结果

传递任意数量的实参

在函数中,如果形参是一个列表,则:def 函数名(*列表名):
如果时字典,则:def 函数名(**字典名)

def build_profile(first_name,last_name,**info):
	profile={}
	profile['name']=first_name.title()+last_name.title()
	for key,value in info.items():
		profile[key]=value
	return profile
print(build_profile('asd','xcv',
		country="China",
		language="Chinese"))		#最好分开

输出结果:
输出结果

将函数存储在模块中

导入整个模块:import 文件名
导入特定的函数:from 文件名 import 函数名
使用as给函数指定别名:from 文件名 import 函数名 as 新名
使用as给模块指定别名:import 文件名 as 新名
导入模块中所有函数:from 文件名 import *

看完python里面的函数,忽然明白了C++里面的一些东西。
函数里面的东西太凌乱了,,总能把我搞懵逼。
重新复习一遍之后,突然感觉内容并没有多少,以前很迷的地方,现在很轻松就明白了。
定个小目标,三天之内把python中的类搞明白。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值