day10__レビューとジョブ
3437 ワード
一、昨日の内容を振り返る
1、関数のパラメータ
1)パラメータ角度:位置パラメータ、キーワードパラメータ、混合パラメータ
2)パラメータ角度:位置パラメータ、デフォルトパラメータ、キーワードパラメータのみ、万能パラメータ
3)パラメトリック角度パラメータ順序:位置パラメータ、*args、デフォルトパラメータ、キーワードパラメータのみ、*kwargs
2、*の魔性用法:
1)関数の定義時:集約を表す
2)関数の呼び出し時:分散を表す
3、pythonに存在する3つの空間:
内蔵ネームスペース:格納された内蔵関数:print,input.....
グローバルネームスペース:pyファイル、pyファイル(関数、クラス内部を除く)の変数を格納し、関数名と関数のメモリアドレスの関係
ローカルネームスペース:保存された関数内部の変数と値の対応関係
4、ロード順:ネームスペース内蔵-------->グローバルネームスペース-------->ローカルネームスペース(関数実行時)
5、取り寄せ順序:近接原則.ローカルネームスペース---->グローバルネームスペース---->内蔵ネームスペース
1)ローカル役割ドメインはグローバル変数のみを参照でき、変更できません.
6、作用域:
1)グローバル役割ドメイン:内蔵ネームスペース+グローバルネームスペース
2)ローカル役割ドメイン:ローカル名空間
二、作業:
1、コードを見て結果を書く
2、コードを見て結果を書く
3、コードを見て結果を書く
4、コードを見て結果を書く
5、コードを見て結果を書く
6、コードを見て結果を書く
7、コードを見て結果を書く
1、関数のパラメータ
1)パラメータ角度:位置パラメータ、キーワードパラメータ、混合パラメータ
2)パラメータ角度:位置パラメータ、デフォルトパラメータ、キーワードパラメータのみ、万能パラメータ
3)パラメトリック角度パラメータ順序:位置パラメータ、*args、デフォルトパラメータ、キーワードパラメータのみ、*kwargs
2、*の魔性用法:
1)関数の定義時:集約を表す
2)関数の呼び出し時:分散を表す
3、pythonに存在する3つの空間:
内蔵ネームスペース:格納された内蔵関数:print,input.....
グローバルネームスペース:pyファイル、pyファイル(関数、クラス内部を除く)の変数を格納し、関数名と関数のメモリアドレスの関係
ローカルネームスペース:保存された関数内部の変数と値の対応関係
4、ロード順:ネームスペース内蔵-------->グローバルネームスペース-------->ローカルネームスペース(関数実行時)
5、取り寄せ順序:近接原則.ローカルネームスペース---->グローバルネームスペース---->内蔵ネームスペース
1)ローカル役割ドメインはグローバル変数のみを参照でき、変更できません.
6、作用域:
1)グローバル役割ドメイン:内蔵ネームスペース+グローバルネームスペース
2)ローカル役割ドメイン:ローカル名空間
二、作業:
1、コードを見て結果を書く
def func():
return 1, 2, 3
val = func()
print(val)
print(type(val) == tuple)
print(type(val) == list)
# :True False
2、コードを見て結果を書く
def func(*args, **kwargs):
print(args)
print(kwargs)
# a. , args (1,2,3,4)
func(1, 2, 3, 4)
func(*[1,2,3,4])
# b. , args ([1,2,3,4],[11,22,33])
func([1,2,3,4],[11,22,33])
# c. , args ([11,22],33) kwargs {'k1':'v1','k2':'v2'}
func([11,22],33,k1='v1',k2='v2')
# d. func(*{' ',' ',' '}), args kwargs ?
func(*{' ',' ',' '})
# e. func({' ',' ',' '},[11,22,33]), args kwargs ?
func({' ',' ',' '},[11,22,33])
# f. func(' ',' ',' ',[11,22,33],**{'k1':' '}), args kwargs ?
func(' ',' ',' ',[11,22,33],**{'k1':' '})
3、コードを見て結果を書く
def func(name,age=19,email='123.qq.com'):
print(name,age,email)
#a func('mrxiong'), , name、age、email ?
func('mrxiong')
#b func('mrxiong',20), , name、age、email ?
func('mrxiong',20)
#c func('mrxiong',20,30), , name、age、email ?
func('mrxiong',20,50)
#d func('mrxiong,email='[email protected]'), , name、age、email ?
func('mrxiong',email='[email protected]')
#e func('mrxiong,email='[email protected]',age=99), , name、age、email ?
func('mrxiong',email='[email protected]',age=99)
#f func(name='mrxiong',99), , name、age、email ?
func(name='mrxiong',99)
#g func(name='mrxiong',99,'[email protected]'), , name、age、email ?
func(name='mrxiong',99,'[email protected]')
4、コードを見て結果を書く
def func(users,name):
users.append(name)
return users
result = func(['mrxiong',' '],'alex')
print(result)
# :
#['mrxiong', ' ', 'alex']
5、コードを見て結果を書く
def func(users,name):
users.append(name)
return users
result = func(['mrxiong',' '],'alex')
print(result)
:
['mrxiong', ' ', 'alex']
6、コードを見て結果を書く
a = 10
b = 20
def test(a,b):
return a ,b
c = test(b,a)
print(c)
:
(20, 10)
7、コードを見て結果を書く
def a(*args):
count = 0
for i in args:
count += i
return count
c = a(1,2,3,4,5)
print(c)
:
15