Python基础之function

前言

函数是带名字的代码块,用于完成具体的工作

函数
def say_hello():
	"""文档字符串"""
	print('Hello')

say_hello()
函数传参
def say_hello(user_name):
	print("Hello," + user_name.title())
	
say_hello('world')

实参和形参

# 在函数say_hello()的定义中,变量user_name是一个形参——函数完成其工作所需的一项信息。
# 在代码say_hello('world')中,值'world'是一个实参,实参是调用函数时传递给函数的信息,
# 这个值被存储在形参username中。
位置实参
# 按顺序关联实参到形参称为位置实参
def describe_language(user_name, language):
	"""描述喜欢的语言"""
	print(user_name.title() + "'s  favorite language is " + language.title() + ".")
	
describe_language('maggieq', 'java')
describe_language('coisini', 'python')
关键字实参
# 关键字实参(明确指出各个实参对应的形参)
# 关键字实参是传递给函数的名称—值对,明确指出各个实参对应的形参
describe_language(language='c', user_name='tom')
默认值
# 可以给函数形参设置默认值
def describe_language(user_name, language ='python'):
	"""描述喜欢的语言"""
	print(user_name.title() + "'s  favorite language is " + language.title() + ".")
		
describe_language(user_name='coisini')
describe_language(user_name='maggieq', language='java')
返回值
def get_formatted_name(first_name, last_name):
	"""返回整洁的姓名"""
	full_name = first_name + ' ' + last_name
	return full_name.title()

print(get_formatted_name('Li', 'Si'))
返回字典
def get_person(first_name, last_name):
	"""返回一个字典,其中包含一个人的信息"""
	person = {'first': first_name, 'last': last_name}
	return person
	
print(get_person('jimi', 'hendrix'))
传递列表
def get_users(names):
	"""向列表中的每位用户发出问候"""
	for name in names:
		print("Hello," + name.title())

get_users(['coisini', 'maggieq'])
传递任意数量的实参
# *languages意为用空元组接收所有实参
def print_languages(*languages):
	"""打印所有语言"""
	print(languages)
	
print_languages('java')
print_languages('java', 'python', 'c')
结合使用位置实参和任意数量实参
# 要让函数接收不同类型的实参,必须将接纳任意数量实参的形参放在最后
# python先匹配位置实参和关键字实参,再将余下的实参都收集到最后一个形参中
def print_languages(user_name, *languages):
	print(user_name.title() + "'s  favorite language is:")
	for language in languages:
		print("- " + language)
				
print_languages('coisini', 'java')
print_languages('maggieq', 'java', 'python', 'c')
使用任意数量的关键字实参
# **user_info 表示用一个名为user_info的空字典接收所有键值对
def build_person(first, last, **user_info):
	"""创建一个字典,接收所有"""
	person= {}
	person['first'] = first
	person['last'] = last
	for key, val in user_info.items():
		person[key] = val
		
	return person
	
user_person = build_person('Li', 'Si',
			   location='China',
			   sex='man')
							
print(user_person)
- End -
一个努力中的公众号
关注一下吧
posted @ 2021-01-24 23:03  Maggieq8324  阅读(165)  评论(0编辑  收藏  举报