3
4

More than 3 years have passed since last update.

【Python入門】Pythonで頻出の関数やメソッドのまとめ【課題形式】

Last updated at Posted at 2020-04-08

はじめに

Pythonには、様々な組み込み関数やメソッドが用意されています。
その中でも頻繁に使用するものをまとめてみました。

概要

Pythonを理解する上で、トミーさんブログの課題が非常に役立ったので、本記事についても課題形式で進めていきます。
不明な点がありましたら、リンク先にて詳しく説明されているので、そちらを参考にしてみてください。

対象者

以下の方向けの記事となっています。
* Pythonのインストールや、JupyterNotebookの環境構築が完了済み。
* 少しPythonを触ってみた。
* 自分の実力を確認したい!

環境

  • macOS High Sierra 10.13.6
  • Python 3.7.6

実装内容

課題1 入力金額の平均金額を算出する

技術要素

  • リストと頻出メソッドの利用(append)
  • リストを計算する関数の利用(sum、len)
  • 入力用の関数を利用(input)
  • 条件分岐の利用

仕様概要

  • 参加者の所持金を入力する
  • 0円が入力された時点で計算を中止する
  • 所持金の平均値を算出する

出力イメージ

スクリーンショット 2020-04-09 5.05.39.png

実装例

# 入力値を格納するリストを用意
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)
  • 入力された英単語の単語を分解する。
  • 書くアルファベットの出現回数を数える。
  • 入力が完了すれば、英単語一覧をソートする。
    • ソートは単語数
  • アルファベット出現回数の結果を表示する。

出力イメージ

スクリーンショット 2020-04-09 5.08.23.png
スクリーンショット 2020-04-09 5.09.17.png

実装例

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文を使用する再帰呼び出し

出力イメージ

スクリーンショット 2020-04-09 5.15.03.png

実装例

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から学習するためのノウハウが公開されているので、ぜひ活用してみてください!

3
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4