2018-07-28

2018-07-29  本文已影响0人  淡水t海边

可变参数的设置:args

#!/usr/bin/env python3

... #-*-coding:utf-8-*-

...

>>> def hello(greeting,*args):

...    if (len(args)==0):

...        print('%s!' % greeting)

...    else:

...        print('%s, %s!' % (greeting, ','.join(args)))

...

>>> hello('Hi')# =>greeting='Hi',args=()

Hi!

>>> hello('Hi','Sarah')# =>greeting='Hi',args=('Sarah')

Hi, Sarah!

>>> hello('Hello','Michael','Bob','Adam')#=>greeting='Hello',args=('Michael','Bob','Adam')

Hello, Michael,Bob,Adam!

>>>

>>> names = ('Bart','Lisa')

>>> hello('Hello',*names) #=>greeting='Hello',args=('Bart','Lisa')

Hello, Bart,Lisa!


关键字参数  **kw

第一种:

#!usr/bin/env python3

... #-*-coding:utf-8-*-

...

>>> def print_scores(**kw):

...    print('Name score')

...    print('.........')

...    for name, score in kw.items():

...        print('%10s %d' % (name,score))

...    print()

...

>>> print_scores(Adam=99, Lisa=88, Bart=77)

Name score

.........

      Adam 99

      Lisa 88

      Bart 77

第二种:

data = {

...    'Adam Lee':99,

...    'Lisa S' : 88,

...    'F.Bart' : 77

... }

print_scores(**data)

Name score

.........

  Adam Lee 99

    Lisa S 88

    F.Bart 77

第三种:

def print_info(name,*,gender,city='Beijing',age):

...    print('personal Info')

...    print('........')

...    print('Name: %s' % name)

...    print('Gender: %s' % gender)

...    print('City: %s' % city)

...    print('Age: %s' % age)

...    print()

...

>>> print_info('Bob',gender='male',age=20)

personal Info

........

Name: Bob

Gender: male

City: Beijing

Age: 20

>>> print_info('Lisa',gender='female',city='Shanghai',age=18)

personal Info

........

Name: Lisa

Gender: female

City: Shanghai

Age: 18

上一篇下一篇

猜你喜欢

热点阅读