『Pythonプログラミング(第3版)』[美]ジョン・ツェラー(John Zelle)第7章答え

8784 ワード

『Pythonプログラミング(第3版)』[美]ジョン・ツェラー(John Zelle)第7章答え
新鲜なストーブ!!!2019年6月、半年ぶりにリニューアル!!
回答はご参考までにしておりますので、間違いがございましたらご指摘ください
判断が当たる
  • 簡単な判断はif文で実現することができる.
  • Python条件では「=」は「/=」と書かれている.
  • 文字列は辞書順で比較される.
  • if-elif文で2つの判断を実現します.
  • math.sqrt関数では負数の平方根を計算できません.
  • 単一try文は、複数のエラーをキャプチャします.
  • 多重判定は、複数のif−else文をネストすることによって処理されなければならない.
  • は、判断構造に関する問題に対して、通常、正しい解決策が1つしかない.
  • Pythonで条件x<=y<=zを許可する.
  • 入力検証は、入力が必要なときにユーザにプロンプトを表示することを意味する.
  • T(p.149「簡単な判断は簡単なifで実現される.」)
  • F(p.135"特に"="は等しいことを示すことに注意")
  • T(p.135「文字列を比較する場合、ソートは「辞書順」である.」)
  • F(p.149「両判定は通常if-elseを用いる.多重判定はif-elif-elseで実現する.」)
  • T(p.42「sqrt関数は負数の平方根を計算できない」)
  • T(p.149「Pythonは、例外処理のためのtry-except文を提供する.」p.143「try文の一般的な形式は......」)
  • F(p.141「Pythonで多重判定を記述するもう一つの方法は、ネストされた構造の意味を保持しているが、より快適に見える.これは、1つのelseと1つのifをelifと呼ばれる句に組み合わせることである.」
  • F
  • T(p.145「Pythonがこの複合条件を許容していることが証明された」)
  • F(p.165「ユーザーが誤った入力を入力した場合、プログラムは別の値を要求します.ユーザーが有効な値を入力するまで再プロンプトが表示されます.このプロセスは入力検証と呼ばれます.」p.326"input validation:ユーザーが提供した値を使用して計算する前に、これらの値をチェックして有効であることを確認するプロセスを入力します.“)

  • 複数選択
  • 他の文の実行を制御する文を___と呼びます.a.ボス構造b.超構造c.制御構造d.分岐
  • Pythonにおける多重判定を実現するための最良の構成は___である.a. if b. if-else c. if-elif-else d. try
  • trueまたはfalseの値を求める式を___と呼びます.a.操作式b.ブール式c.単純式d.複合式
  • プログラムが直接実行される(インポートされていない)場合、name_を選択します.a. script b. main c. main d. True
  • boolタイプの字面量は__.a. T,F b. True,False c. true,false d. 1,0
  • は、別の判断の内部で判断を下すのは___である.a.クローンb.スプーンc.ネストd.遅延
  • Pythonでは、判断したbodyは___と表示される.a.インデントb.かっこc.かっこd.コロン
  • ある判断は別のグループの判断をもたらし、これらの判断はまた別のグループの判断をもたらし、このままでは、このような構造を判断___と呼ぶ.a.ネットワークb.ネットワークc.ツリーd.トラップ
  • 用math.sqrt負の値をとる平方根は___を生成する.a.ValueError b.虚数c.プログラム崩壊d.胃痛
  • の複数の選択問題は、___に最も類似しています.a.簡易判定b.2ウェイ判定c.多重判定d.異常処理プログラム
  • c
  • c
  • b
  • c
  • b
  • c
  • a
  • c
  • c
  • c

  • ディスカッション
  • あなた自身の言葉で以下のパターンを説明します.a.簡単判断b.2ウェイ判断c.多重判断
  • try/exceptで異常を処理するのと、通常の判断構造(ifの変体)で異常を処理するのとではどのような違いがありますか?
  • 以下は(愚かな)判断構造である:
  • a, b, c = eval(input(’Enter three numbers:))
    if a >b:
        if b >c:
            print("Spam Please!")
        else:
            print("It’s a late parrot!")
    elif b > c:
        print("Cheese Shoppe")
        if a >= c:
            print("Cheddar")
        elif a < b:
            print("Gouda")
        elif c == b:
            print("Swiss")
    else:
        print("Trees")
        if a == b:
            print("Chestnut")
        else:
            print("Larch")
    print("Done")

    各入力可能出力:a.3,4,5 b.3,3,3 c.5,4,3 d.3,5,2 e.5,4,7 f.3,3,2
  • 単純判定:判定条件がTrueの場合、単純判定における文系列が実行される.判断条件がFalseの場合、文はスキップされます.2つの判断:2つの判断は2つの部分を含む簡単な判断です.条件がTrueの場合、文が実行されます.条件がFalseの場合、別の文のセットが実行されます.マルチ判定:マルチ判定は複数の判定条件を宣言し、この判定条件がTrueの場合にのみその判定下の文を実行する.
  • 同:いずれも、あるコードブロックを条件付きで実行する.異:try/exceptには特定の判断文は含まれておらず、tryブロック内の任意の文にエラーが発生した場合にのみ、対応するexceptによってexceptブロック内の文がキャプチャされ、実行されます.
  • a. Trees Larch Done b. Trees Chestnut Done c. Spam Please! Done d. Cheese Shoppe Cheddar Done e. It’s a late parrot! Done f. Cheese Shoppe Cheddar Done

  • プログラミング練習
  • 多くの会社は、週40時間以上の勤務時間に150%の給料を支払っています.作成プログラムは、勤務時間数と時間給与を入力し、1週間の総給与を計算します.
  • def main():
        hours = eval(input("How many hours do you work in a week?"))
        rate = eval(input("How is your hourly rate of pay?"))
        
        pay = hours * rate
        
        if hours <= 40:
            pay = hours * rate
        else:
            pay = 40 * rate + (hours - 40) * rate * 1.5
            
        print("Your weekly pay is ${:0.2f}.".format(pay))
        
    if __name__ == "__main__":
        main()

    未完待機・・・