2026/1/6 函数1

12 阅读2分钟

今天复习了while循环里的剩余部分和函数,最近中午没有运动,吃完午饭看书晕碳好严重啊。

  1. 定义函数 greet_user():括号内指出函数为完成任务需要的信息;“”“”“”标注的是文档字符串的注释。
def greet_user():
	"""显示简单的问候语"""
	print("Hello!")
greet_user()
  1. 向函数传递信息 在括号内添加参数,调用时给参数指定任何值
def greet_user(username):
	"""显示简单的问候语"""
	print(f"Hello,{username.title()}!")
greet_user('coco')
  1. 实参和形参 上述例子里,username是形参,coco是实参

练习

  • 消息
def display_message(topic):
	"""用于指出本章的主题"""
	print(f"本章的主题是{topic}.")
display_message("函数")
  • 喜欢的书
def favorite_book(title):
	"""指出喜欢的书"""
	print(f"One of my favorite books is {title}.")
favorite_book('Alice in Wonderland')
  1. 传递实参
  • 位置实参:基于实参的==顺序==进行关联。 pets.py
def describe_pet(animal_type,pet_name):
	"""显示宠物的信息"""
	print(f"\nI have a {animal_type}.")
	print(f"My {animal_type}'s name is {pet_name.title()}.")
describe_pet('dog','lailai')
# 》 I have a dog.
# 》 My dog's name is Lailai.
  • 关键字实参:传递给函数的名值对,可以==不考虑实参顺序==。 describe_pet()
def describe_pet(animal_type,pet_name):
	"""显示宠物的信息"""
	print(f"\nI have a {animal_type}.")
	print(f"My {animal_type}'s name is {pet_name.title()}.")
describe_pet(animal_type='dog',pet_name'lailai')
# 》 I have a dog.
# 》 My dog's name is Lailai.
  • 默认值:如果在形参中指定了默认值,当输入实参时,没有指定,则返回默认值。 describe_pet()
def describe_pet(animal_type='dog',pet_name):
	"""显示宠物的信息"""
	print(f"\nI have a {animal_type}.")
	print(f"My {animal_type}'s name is {pet_name.title()}.")
describe_pet(pet_name='lailai')#或者也可以在定义形参的时候将pet_name放到第一个,这样调用的时候可以直接写实参。
#describe_pet('lailai')
# 》 I have a dog.
# 》 My dog's name is Lailai.

==注意:若要定义非默认值的实参,必须将其他没有默认值的形参也列出,并按照位置顺序来,否则会理解错误。