Python- 函数的返回值


  • 函数可以处理数据并返回一个值或一组值。
  • 返回的值称为返回值
  • return 语句将值发送回调用函数的行。
  • 优点:通过将工作委派给函数来简化主程序。
def add_numbers(a, b):
    return a + b

result = 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.title()

musician = get_formatted_name('Nidhi', 'Ashtikar')
print(musician)  # Output: Nidhi Ashtikar

get_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 Ashtikar
print(musician2)  # Output: Nidhi Nid Ashtikar

通过提供默认空字符串 middle_name='',将中间名设为可选。

该函数检查是否提供了中间名,并相应地设置格式。

返回字典:

函数可以返回复杂的数据结构,如字典。

这允许以结构化格式组织相关数据。

def build_person(first_name, last_name):

    person = {'first': first_name, 'last': last_name}
    return person

musician = 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 person

musician = 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 person

musician = 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.title()

while 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: Nidhi
Last name: Ashtikar

Hello, Nidhi Ashtikar!

Please tell me your name:
First name: q
>

用户可以重复输入他们的名字,程序会向他们打招呼。循环一直持续,直到用户输入 'q' 退出。

原文链接:,转发请注明来源!