はじめに
Pythonには、様々な組み込み関数やメソッドが用意されています。
その中でも頻繁に使用するものをまとめてみました。
概要
Pythonを理解する上で、トミーさんブログの課題が非常に役立ったので、本記事についても課題形式で進めていきます。
不明な点がありましたら、リンク先にて詳しく説明されているので、そちらを参考にしてみてください。
対象者
以下の方向けの記事となっています。
- Pythonのインストールや、JupyterNotebookの環境構築が完了済み。
- 少しPythonを触ってみた。
- 自分の実力を確認したい!
環境
- macOS High Sierra 10.13.6
- Python 3.7.6
実装内容
課題1 入力金額の平均金額を算出する
技術要素
- リストと頻出メソッドの利用(append)
- リストを計算する関数の利用(sum、len)
- 入力用の関数を利用(input)
- 条件分岐の利用
仕様概要
- 参加者の所持金を入力する
- 0円が入力された時点で計算を中止する
- 所持金の平均値を算出する
出力イメージ
実装例
# 入力値を格納するリストを用意
money_list = []
# 平均金額を格納
average = 0
while True:
# 入力値を格納
money = int(input("あなたの所持金を教えてください:"))
if money == 0:
break
# リストへ入力された金額を追加
money_list.append(money)
# ゼロ除算を考慮
if len(money_list) !=0:
# 合計値を算出
s = sum(money_list)
# リストに格納されたサイズ(ここでは要素数)
n = len(money_list)
# 平均値を算出
average = s / n
print("全員の所持金の平均額は",average,"です。")
課題2 英単語の文字数をすべてカウントする
仕様概要
- 英単語を入力する。
- 何も入力されなかったら、英単語の入力を終了する。
仕様詳細
- リストは以下の内容で作成する。
- アルファベットの小文字(キー)
- 数値(初期値:0)
- 入力された英単語の単語を分解する。
- 書くアルファベットの出現回数を数える。
- 入力が完了すれば、英単語一覧をソートする。
- ソートは単語数
- アルファベット出現回数の結果を表示する。
出力イメージ
実装例
alphabet_code= dict.fromkeys(list("abcdefghijklmnopqrstuvwxyz"), 0)
words = []
# 英単語を入力し、文字数を加算する
while True:
word = input("英単語を入力指定ください:")
if word == "":
break
words.append(word)
for letter in word:
if letter in alphabet_code.keys():
# キーがあれば加算(判定しないとkeyerrorが起きる)
alphabet_code[letter] += 1
print('')
print('入力された単語は、以下のとおりです')
words.sort()
for word in words:
print('・' + word)
print('')
print('アルファベット出現回数の結果は、以下のとおりです')
for letter , count in alphabet_code.items():
print("{0}\tの出現回数 : {1} 回".format(letter, count))
課題3 指定したフィボナッチ数列の結果を出力する
技術要素
- 関数の利用
- 再帰関数の理解
仕様概要
- 入力メッセージと入力フォームを表示
- メッセージ : 「フィボナッチ数列のうち何番目の数値を表しますか」
- 入力した数値で、フェイボナッチ数列を表示
使用詳細
- フィボナッチ数列の関数を作成
- 1番目、2番目の数値は1
- 3番目以降の数値は、1つ前の数値と2つ前の数値の和
- while文を使用する再帰呼び出し
出力イメージ
実装例
def fib_func(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fib_func(n - 1) + fib_func(n - 2)
target_num = int(input('フィボナッチ数列のうち何番目の数値を表しますか : ') )
print(fib_func(target_num))
参考情報
本記事は、トミーさんブログのロードマップ記事に沿って課題を進めた内容となっています。
もっと細かい点が知りたい、他の使い方を知りたい方は、リンク先から学習されることをオススメします。
課題だけでなく、Pythonを0から学習するためのノウハウが公開されているので、ぜひ活用してみてください!