python-2入門:関数と辞書

関数 ##

特定のタスクを完了するために使用される名前付きコードブロック。

関数構造

関数コードブロックは、defキーワードで始まり、関数識別子名と括弧()が続きます。入力パラメーターと引数は、括弧の間に配置する必要があります。括弧はパラメータを定義するために使用できます。関数の最初の行では、オプションでdocstringを使用できます。これは関数の説明を格納するために使用されます。関数の内容はコロンで始まり、インデントされています。 returnは関数を終了し、オプションで呼び出し元に値を返します。式なしで返すことは、Noneを返すことと同じです。

簡単なhello関数を作成する

>>> def hello():...print('hello,world')...>>>hello()
hello,world

パラメーター ####

関数を定義する場合、()のパラメーターは正式なパラメーターであり、入力値は実際のパラメーターです。以下の例では、hello(x)が正式なパラメーターであり、7が実際のパラメーターです。

>>> def hello(x):...return x
>>> hello(7)7

デフォルト

パラメータで独自のデフォルト値を定義できます

>>> def hello(x,y):...return x-y
...>>> hello(3,7)-4

戻り値

関数によって返される値は戻り値です

>>> def hello(x):...return x*3...>>>hello(3)9

着信オブジェクトが整数や浮動小数点数などの変更不可能なオブジェクトでない場合、関数で値が変更されても、元のオブジェクトは変更されません。

10個のリストが渡された場合でも、リストは関数内で参照されます。関数が変更されると、元の変数も変更されます。

>>> def hello(x):...     x=2...>>> x=3>>>print(x)3>>>hello(x)>>>print(x)3

xが2になっていないことがわかります

>>> def hello(x):...     x[1]=2>>> x=[2,4,6]>>>hello(x)>>>print(x)[2,2,6]

この関数を実行した後、xが値を変更したことがわかります

辞書に戻る

>>> def person(name,score):
 person={'name':name,'score':score}return person
>>> person("Tom",90){'name':'Tom','score':90}

関数内にネストされた関数

次の例は、関数内のネストされた関数です。戻り値は関数を返し、その中のxはfun関数のパラメーターxです。

>>> def fun(x)
  def fun2(y):return x+y
  return fun2
>>> a=fun(3) ######設定すると=fun(3)パラメータxを渡すことと同等の場合=3,返されるaはfun2の関数です。
>>> type(a)<class'function'>>>>a(8) ######パラメータを再度渡す場合は、y値を渡すのと同じです。
11

関数とwhileループの組み合わせ

>>> def person(name,score):
 person={'name':name,'score':score}return person

 while True:print('please tell me your name and score:')
 name=input('name:')if name =='q':break  
 score=input('score:')if score =='q':break  
 people=person(name,score)print(people)
please tell me your name and score:
name:Tom
score:80{'name':'Tom','score':'80'}
please tell me your name and score:
name:q

配信リスト

ループの内容を追加して、関数にリストを渡すことができます

>>> def hello(x):...for name in x:...print('hello'+name+'!')...>>> t=['tom','mary','hh']>>>hello(t)
hellotom!
hellomary!
hellohh!

任意の数の引数を渡します

正式なパラメータに*を追加します。これは、複数の実際のパラメータを渡すことができることを意味します

>>> def vegetable(*x):...print(x)...>>>vegetable('spinage')('spinage',)>>>vegetable('spinage','chinese leaf')('spinage','chinese leaf')

辞書

pythonでは、辞書は一連のキーと値のペアです。各キーは値に関連付けられています。キーを使用して、対応する値にアクセスできます。キーには、数値、文字列、リスト、または辞書を指定できます。

クラスメートの名前と成績をリストのクラスに保存する場合は、リストとタプルを使用できます。

data=[('tom',89),('mary',90),('haha',100)]
data

[(' tom',89),('mary',90),('haha',100)]

上記のリストの場合、リストにトムがあるかどうかを照会する場合は、リスト内のすべてを比較する必要がありますが、速度が遅くなるため、辞書の形式である特定の機能に従って対応する値を照会します。 key_value、データ構造はmapと呼ばれ、pythonは辞書で構成されるキーと値のペア

以下に辞書を作成します

scores={'tom':90,'mary':80,'mike':70,'jak':100}
scores

{' tom':90,'mary':80,'mike':70,'jak':100}
len(scores)###キーと値のペアがいくつあるかを確認します

4

辞書を使用

scores['tom'] ###キートムに従って対応する値90を取得します
90
scores.get('tom')
90
scores['bob']=88 ###キーと値のペアを辞書に追加します

scores

{' tom':90,'mary':80,'mike':70,'jak':100,'bob':88}
scores['tom']='toom' ###辞書の値を変更する
scores

{' tom':'toom','mary':80,'mike':70,'jak':100,'bob':88}
del scores['tom'] ####キーと値のペアを削除します
scores

{' mary':80,'mike':70,'jak':100,'bob':88}

トラバース辞書

scores

{' mary':80,'mike':70,'jak':100,'bob':88}
for key,value in scores.items(): ###すべてのキーと値のペアをトラバースします
 print(key)print(value)
mary
80
mike
70
jak
100
bob
88
for name in scores.keys(): #####すべてのキーを繰り返します
 print(name)
mary
mike
jak
bob

for score in scores.values(): ####すべての値を繰り返します
 print(score)
807010088
scoresheet={'mike':(60,80,90),'tom':(80,70,99),'mary':(78,90,57)}for key in scoresheet.keys():print(key,scoresheet[key])
mike(60,80,90)tom(80,70,99)mary(78,90,57)

辞書リスト

リストに辞書を含める

alion={'hh':1,'hhw':2,'hhh':3}
alion2={'yy':1,'yyy':2,'yyyy':3}
alion3={"uu":1,'uuu':2,"uuuu":3}
alionall=[alion,alion2,alion3]
alionall

[{' hh':1,'hhw':2,'hhh':3},{'yy':1,'yyy':2,'yyyy':3},{'uu':1,'uuu':2,'uuuu':3}]
for alien in alionall:print(alien)
{' hh':1,'hhw':2,'hhh':3}{'yy':1,'yyy':2,'yyyy':3}{'uu':1,'uuu':2,'uuuu':3}
for alien in alionall[:2]:print(alien)
{' hh':1,'hhw':2,'hhh':3}{'yy':1,'yyy':2,'yyyy':3}

リストを辞書に保存する

apple={'color':['red','yellow'],'shape':['round','square']}
for things in apple.values():print(things)
[' red','yellow']['round','square']
for key in apple.keys():print(key)
color
shape

辞書に辞書を含める

people={'tom':{'math':80,'english':90},'mary':{'math':90,'english':70}}for name,project in people.items():print(name,project)
tom {'math':80,'english':90}
mary {'math':90,'english':70}
for name,pro in people.items():print(name,pro)
tom {'math':80,'english':90}
mary {'math':90,'english':70}

Recommended Posts

python-2入門:関数と辞書
Python(18)入門
Python(9)入門
Python(4)入門
Python入門(2)
python-1入門
Python(14)入門
Python(7)の使用を開始する
Python(17)入門
Python(15)入門
Python(10)入門
Python(11)入門
Python(6)入門
Python(3)入門
Python(12)入門
Python(5)入門
Python入門(18歳以上)
Python(13)入門
Python(16)入門
Python-4入門:クラスとオブジェクト
PythonでNumpyを使い始める
04.Python入門の条件付きステートメント
Ubuntuを使い始める
はじめにpython学習手順
株で遊んでPythonを学んだ
07.Python3関数
Python関数
Pythonは、単一にリンクされたリストと辞書を実装します
Pythonをすばやく開始する方法
pythonの関数
Python and Go
Pythonでファイルを読み書きする方法
Pythonの内省と考察
ヘッダー付きのpythonrequests.get
PythonでWeChatを再生する
[python] ubuntuの下のpython2とpython3
PythonによるWebスクレイピング
Pythonの分解とパッケージ化
Python3の構成とentry.md