python函数介绍

1、向函数传递信息

1 def greet_user(username):
2     print('Hello,' + username.title() + '!')
3 greet_user('jesse')

2、位置实参

1 def greet_user(animal_type,pet_name):
2     print('\nI have a' + animal_type + '.')
3     print('My' + animal_type + 'name is' + pet_name.title() + '.')
4 greet_user('hamster','harry')

调用函数多次,可以根据调用的函数任意次

 

def greet_user(animal_type,pet_name):
    print('\nI have a' + animal_type + '.')
    print('My' + animal_type + 'name is' + pet_name.title() + '.')
greet_user('hamster','harry')
greet_user('dog','wille')

3、关键字实参

关键字实参是传递给函数的名称--值对。因些向函数传递实参时不会混淆。关键字实参让你无需考虑函数调用中的实参顺序。

def greet_user(animal_type,pet_name):
    print('\nI have a' + animal_type + '.')
    print('My' + animal_type + 'name is' + pet_name.title() + '.')
greet_user(animal_type='hamster',pet_name='harry')
greet_user(pet_name='harry',animal_type='hamster')

注意:使用关键字实参时,务必准确地指定函数定义中的形参名。

 

4、返回值

函数并非总是直接显示输出,相反,它可以处理一些数据,并返回一个或一组值。函数返回的值被称为返回值。在函数中,可使用return语句将值返回到调用函数的代码行。返回值让你能够将程序的大部分繁重工作移到函数中去完成,从而简化主程序。

4.1 返回简单值

def get_formatted(first_name,last_name):
    full_name=first_name + ' ' + last_name
    return full_name.title()
musician =get_formatted('jimi','hendrix')
print(musician)

4.2 让实参变的可选

def get_formatted(first_name,last_name,midddle_name=''):
    if midddle_name:
        full_name=first_name + ' '+ midddle_name + ' ' + last_name
    else:
        full_name=first_name + ' ' + last_name
        return full_name
musician=get_formatted('jimi','hendirx')
print(musician)
# musician=get_formatted('john','hooker','lee')
# print(musician)

4.3 返回字典

def build_person(first_name,last_name):
    person={'first':first_name,'last':last_name}
    return person
musician=build_person('jimi','hendrix')
print(musician)

 

 可选形参:

def build_person(first_name,last_name,age=''):
    person={'first':first_name,'last':last_name}
    if age:
        person['age']=age
    return person
musician=build_person('jimi','hendrix',age=27)
print(musician)

5、结合使用函数和while循环

def get_formatted(first_name,last_name):
    full_name=first_name+ ' ' + last_name
    return full_name.title()
while True:
    print('\n pls tell me your name:')
    print("(enter 'q' at any time to quit)")
    f_name=input('First name:')
    if f_name=='q':
        break
    l_name=input('Last name:')
    if l_name=='q':
        break
    formatted=get_formatted(f_name,l_name)
    print('\nHello,' + formatted + '!')

 

 6、传递列表

1 usernames=['hannah','ty','margot']
2 def greet_users(username):
3     for name in username:
4         msg='Hello,' + name.title()
5         print(msg)
6 greet_users(usernames)

 

 

 

 

posted on 2016-11-26 17:11  裤裆内隐藏杀气  阅读(173)  评论(0编辑  收藏  举报

导航