★Python 学習記録(9/2~9/4)
使用教材:スッキリわかるPython入門 第2版
学習期間:2025/9/2~9/4
直近の目標:Python 3 エンジニア認定基礎試験
9/1 5-1 オリジナルの関数
関数は、Pythonが準備してくれているが、自分たちでも作ることが出来る!!
ここからは1つのプログラムを複数の部品に分けること(部品化)によって、プログラムの可読性・保守性の向上を目指すことが課題。
◆関数の定義
def hello(): #定義(definition)
print('こんにちは。バッファローマンです。') #動作指示(関数ブロック)
hello() #シンプルな関数の呼び出し(call)
注意点:Pythonが標準で提供している関数を関数名として定義しないようにしよう!!
理由は、関数名が衝突(上書き)することによって、標準の関数が使えなくなるから。
5-2 引数と戻り値
◆引数
def hello(name): #仮引数
print(f'{name}です。')
hello('キン肉マン') #"実引数"
hello('バッファローマン') #"実引数"
◆複数の引数
def profile(name, age, hobby):
print(f'名前 {name},年齢 {age}歳, 趣味 {hobby}')
profile('キン肉マン',20,'プロレス観戦')
◆複数の戻り値
def plus(x,y):
answer=x+y
return answer
answer=plus(100,50) #ここでの2つの'answer'は別物
print(f'足し算の答えは{answer}です')
◆組み合わせ
def input_scores(name): #得点入力を担当する関数
print(f'{name}さんの試験結果を入力してください')
network=int(input('ネットワークの得点は?:'))
datebase=int(input('データベースの得点は?:'))
security=int(input('セキュリティの得点は?:'))
scores=[network,datebase,security]
return scores
k_scores=input_scores('キン肉マン')
def cal_average(scores): #平均の算出を担当する関数
avg=sum(scores)/len(scores)
return avg
k_avg=cal_average(k_scores) #input_scores関数の戻り値を引数に渡す
def output_result(name,avg): #平均点の出力を担当する関数
print(f'{name}さんの平均点は{avg}です。')
output_result('キン肉マン',k_avg) #calc_avarage関数の戻り値を引数に渡す
5-3 関数の応用テクニック
デフォルト引数・可変長引数・(global関数)
◆デフォルト引数
def eat(dinner='焼肉'): #デフォルト引数
print(f'夜ごはんは{dinner}です')
eat() # → 夜ごはんは焼肉です
eat('焼肉') # → 夜ごはんは焼肉です
◆*arg(可変長引数)
def show_foods(*foods): # *arg
for food in foods:#for:[繰り返す],in[この中身を使う]という役割
print(f'好きな食べ物:{food}')
show_foods('ラーメン', 'カレー', 'すし')
◆**kwarg(可変長引数)
def show_info(**info): # **kwargs
for key, value in info.items():
print(f'{key}:{value}')
show_info(name='キン肉マン', age=20, city='キン肉星')
◆*arg-**kwargの使い分け
種類 | 説明 | 例 |
---|---|---|
*args | 順番で渡す引数をまとめて受け取る | func('A', 'B', 'C') |
**kwargs | 名前付きで渡す引数をまとめて受け取る | func(name='Yuta', age=28) |
何度も前ページを見返しながら進めてる。データ分析に興味があるので、その方面でPythonを活用したい。巷では「Pythonは初学者にもおススメ」と噂されるけど、自分にとっては難しい。だからこそ、他人よりも時間をかけて進めていこう!!
chatGPT/Copilotを使いながら、学習を進めている。「馬鹿でもわかるように」というキーワードを入れるとマジで簡単に要約してくれる。ありがたい。