2019年7月9日火曜日

開発環境

Head First はじめてのプログラミング ―頭とからだで覚えるPythonプログラミング入門 (Eric Freeman(著)、嶋田 健志(監修)、木下 哲也(翻訳)、株式会社オライリー・ジャパン)を6章(テキスト、文字列、ヒューリスティック - すべてを組み合わせる)の自分で考えてみよう(275ページ)の解答を求めてみる。

コード

Python 3

sample4_test.py

from unittest import TestCase, main


class MyTestCase(TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test(self):
        scores = [90, 50, 1]
        grades = ['5', '10-12', 'Colleage Graduate']
        for score, grade in zip(scores, grades):
            self.assertEqual(f(score), grade)

sample4.py

#!/usr/bin/env python3
from unittest import TestCase, main


class MyTestCase(TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test(self):
        scores = [90, 50, 1]
        grades = ['5', '10-12', 'College Graduate']
        for score, grade in zip(scores, grades):
            self.assertEqual(f(score), grade)


def f(score: float) -> str:
    if score >= 90:
        return '5'
    if score >= 80:
        return '6'
    if score >= 70:
        return '7'
    if score >= 60:
        return '8-9'
    if score >= 50:
        return '10-12'
    if score >= 30:
        return 'College Student'
    return 'College Graduate'


if __name__ == '__main__':
    main()

入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

C:\Users\...>py sample4.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s

OK

C:\Users\...>

0 コメント:

コメントを投稿