小さな実験:
プログラム、時間と分に分を実装します。機能MinutesToHours.pyファイル実装Hours()
、ユーザによる入力分钟数
に小时数和分钟数
、そしてできるだけ大きく要する時間の数。で結果XX H, XX M
の印刷の形式。
要件:
- ユーザーが使用していない、分のコマンドラインパラメータ番号を入力することができ
input
ますが、コマンドラインパラメータを使用することができ、sys.argv
抽出物に。例えば、プログラムが実行されpython3 MinutesToHours.py 80
、渡された引数は、80
分の数、時間および分の対応する番号をプリントアウトするためのプログラムが必要で、出力されます1 H, 20 M
。 - ユーザーが負の値を入力すると、プログラムが必要
raise
スローするValueError
例外を。 Hours()
関数呼び出しが必要な場合はtry...except
例外を処理します。例外を取得した後、あなたは、画面上のプリントアウトParameter Error
正しくない値を入力するようにプロンプトにユーザーを。sys.argv
コマンドライン引数、文字列のパラメータ取得に注意を払うを取得し、あなたが使用することができint()
、また、そのような入力など、異常な状況を、発生する可能性があり、ここで、整数に文字列を整数に変換することができない「ABCD」されます- raise文
- してみてください... except文
import sys
# 转换函数
def Hours(minute):
# 如果为负数则 raise 异常
if minute < 0:
raise ValueError("Input number cannot be negative")
else:
print("{} H, {} M".format(int(minute / 60), minute % 60))
# 函数调用及异常处理逻辑
try:
Hours(int(sys.argv[1]))
except:
print("Parameter Error")