函数可以处理数据并返回一个值或一组值。返回的值称为返回值。return 语句将值发送回调用函数的行。优点:通过将工作委派给函数来简化主程序。def add_numbers(a, b): return a + bresult = add_numbers(5, 3)print(result) # Output: 8摘要:def get_formatted_name(first_name, last_name): full_name = f"{first_name} {last_name}" return full_name.titlemusician = get_format
函数可以根据输入返回单个格式化结果。
例如,设置人员全名的格式
def get_formatted_name(first_name, last_name): full_name = f"{first_name} {last_name}" return full_name.titlemusician = get_formatted_name('Nidhi', 'Ashtikar')print(musician) # Output: Nidhi Ashtikarget_formatted_name 函数将名字和姓氏组合在一起,并使用 title 对其进行格式化,然后返回结果。
默认参数值可用于使参数成为可选参数。
允许更灵活的函数调用,其中某些信息可能并不总是必要的。
def get_formatted_name(first_name, last_name, middle_name=''): if middle_name: full_name = f"{first_name} {middle_name} {last_name}" else: full_name = f"{first_name} {last_name}" return full_name.title# Calling the function with and without a middle name:musician1 = get_formatted_name('Nidhi', 'ashtikar')musician2 = get_formatted_name('nidhi', 'Ashtikar', 'Nid')print(musician1) # Output: Nidhi Ashtikarprint(musician2) # Output: Nidhi Nid Ashtikar通过提供默认空字符串 middle_name='',将中间名设为可选。
该函数检查是否提供了中间名,并相应地设置格式。
函数可以返回复杂的数据结构,如字典。
这允许以结构化格式组织相关数据。
def build_person(first_name, last_name): person = {'first': first_name, 'last': last_name} return personmusician = build_person('nidhi', 'ashtikar')print(musician) # Output: {'first': 'nidhi', 'last': 'ashtikar'}该函数将名字和姓氏存储在字典中,并返回整个字典。
使用 None 作为可能并不总是提供的可选参数的默认值。
def build_person(first_name, last_name, age=None): person = {'first': first_name, 'last': last_name} if age: person['age'] = age return personmusician = build_person('nidhi', 'ashtikar', age=35)print(musician) # Output: {'first': 'nidhi', 'last': 'ashtikar', 'age': 35}仅当提供可选的 age 参数时,才会将其添加到字典中。
def build_person(first_name, last_name, age=None): person = {'first': first_name, 'last': last_name} if age: person['age'] = age return personmusician = build_person('nidhi', 'ashtikar')print(musician) # Output: {'first': 'nidhi', 'last': 'ashtikar'}可以在循环中使用函数,以根据用户输入重复执行操作。
示例:一个函数,用于格式化 while 循环中使用的名称以问候用户。
def get_formatted_name(first_name, last_name): full_name = f"{first_name} {last_name}" return full_name.titlewhile True: print("\nPlease tell me your name:") f_name = input("First name: ") if f_name == 'q': break l_name = input("Last name: ") if l_name == 'q': break formatted_name = get_formatted_name(f_name, l_name) print(f"\nHello, {formatted_name}!")>>Please tell me your name:First name: NidhiLast name: AshtikarHello, Nidhi Ashtikar!Please tell me your name:First name: q>用户可以重复输入他们的名字,程序会向他们打招呼。循环一直持续,直到用户输入 'q' 退出。
来源:自由坦荡的湖泊AI一点号
免责声明:本站系转载,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!