Pythonの学習日記(8)機能

構造の機能:

 

関数の戻り値:

1.機能実行幸運を返すためのキーワードは、もはやダウン実行されません

デフFUNC():
     印刷" Hello Worldの!" 印刷" こんにちは世界!" のリターン
    印刷" こんにちは世界!" 
FUNC()  のHello World!
        こんにちは、世界!

関数はNoneを返し返しバック値を書き込む書き込みに戻るかしない2

デフFUNC():
     印刷" Hello Worldの!" プリント(FUNC())   のHello World!
                なし                        

ライトバック関数の戻り値は、その値を返します3。

4タプルの複数の結果のライトバック関数が返された場合、複数の変数を直接祖先使用することによって得ることができます

DEF FUNC():
     戻り -1,5,6,7-  = FUNC()
 プリント(値)    (1、5、6、7)

なぜ先祖のデータへの復帰がありますか?

Pythonインタプリタを開くとき

自動的タプル、タプル、リスト、辞書はアンパックできカンマ区切り要素に組み合わさパイソン

 

関数のパラメータ:

パラメータ渡し:の形態のプロセスパラメータの実パラメータに渡されます。

<1>仮パラメータ:関数本体で使用されるパラメータ変数

  。位置パラメータ:左から右へ一次元の位置に応じて

  パラメータbのデフォルト値:関数のパラメータのデフォルト値を設定し、我々はオープン機能モードがデフォルトモード=「R」で呼び出すときに、私たちは省略を書いていないような

デフ print_info(名前、年齢、性別= ' 男性' ):
     印刷" {} {} {} " .format(名前、年齢、性別))
print_info(' ジェーン'、年齢= 15)  ジェーン男性15

デフォルト値は、実際のパラメータを変更することがあります。

def print_info(name,age,sex = 'male'):
    print("{} {} {}".format(name, age,sex))
print_info('Jane',sex = 'female',age = 15)  #Jane female 15

  陷阱:如果默认参数的值是一个可变数据类型,那么每一次调用函数的时候,如果不传值那么就公用这个数据类型的资源

默认参数为列表:

def func(li = []):
    li.append(2)
    print(li)
func()      #[2]
func()      #[2, 2]
func([])    #[2]
func()      #[2, 2, 2]

默认参数为字典:

def func(dic = {}):
    dic['a'] = 'v'
    print(dic)

func()      #{'a': 'v'}     key是唯一所以每一次都是覆盖
func()      #{'a': 'v'}
func({})    #{'a': 'v'}
func()      #{'a': 'v'}
def func(k,dic = {}):
    dic[k] = 'v'
    print(dic)
func('a')   #{'a': 'v'}
func('b')   #{'a': 'v', 'b': 'v'
func('c')   #{'a': 'v', 'b': 'v', 'c': 'v'}

  c.动态参数:

    ①动态接收位置参数:*args 接收所有的位置参数,再以元祖的形式赋予args

def sum_data(*args):
    res = 0
    for i in args:
        res += i
    return res
print(sum_data(1,2,3,4,7,8,-10))    #15

    ②动态接收关键字参数:**kwargs 接收所有的关键字参数,再以字典的形式赋予kwargs

def print_data(**kwargs):
    print(kwargs)
print_data(name='Jane',sex='female',age=22)   #{'name': 'Jane', 'sex': 'female', 'age': 22}

两种不同类型的动态参数可以一起使用,这样会大大提升参数扩展性,也解决了大多数实参一一对应的难题

<2>实际参数:在调用函数时使用的参数变量

   a.位置参数:从左到右和形参的位置一一对应 

def print_info(name,sex,age):
    print("{} {} {}".format(name,sex,age))
print_info('Jane','female',15)  #Jane female 15

  b.关键字参数:当用于繁杂的数据时,不需要记住参数的位置,只需要记住参数的名字即可

def print_info(name,sex,age):
    print("{} {} {}".format(name, sex, age))
print_info(name='Jane',sex='female',age = 15)  #Jane female 15

  c.混合参数:就是位置参数和关键字参数可以混合着使用

  原则:当使用这种写法就一定要注意位置参数必须要在关键字参数之前

def print_info(name,sex,age):
    print("{} {} {}".format(name, sex, age))
print_info('Jane','female',age = 15)  #Jane female 15

 

*的用法:

 

おすすめ

転載: www.cnblogs.com/Fantac/p/11292714.html