題目描述:
成績分數百分制轉為五級制的判斷輸出(建議使用異常處理try-except-else-finally)。
具體要求如下:
1)輸入乙個[0-100]內成績資料,輸出相應等級(a、b、c、d、e),
如輸入為99,第一行輸出為「輸入成績屬於a級別。」;
2)當輸入資料為其他字元或者超過範圍,則輸出「輸入資料有誤!」;
3)當成績等級為a、b、c、d,則換行輸出「祝賀你通過考試!」;
4)使用finally實現無論輸入任何資料,均在最後輸出「好好學習,天天向上!」
思路:使用正規表示式來匹配[0-100]內的成績資料,包括整數和小數。
#分數轉換**
import re
orgnscore =
input()
pat = re.
compile
(r'^(0|100|[1-9]\d.?\d*)$'
)try
:if pat.match(orgnscore)
: score =
eval
(orgnscore)if0
<= score <60:
print
("輸入成績屬於e級別。"
)elif score <70:
print
("輸入成績屬於d級別。"
)print
("祝賀你通過考試!"
)elif score <80:
print
("輸入成績屬於c級別。"
)print
("祝賀你通過考試!"
)elif score <90:
print
("輸入成績屬於b級別。"
)print
("祝賀你通過考試!"
)else
:print
("輸入成績屬於a級別。"
)print
("祝賀你通過考試!"
)else
:print
("輸入資料有誤!"
)except exception as e:
print
(e.message)
finally
:print
("好好學習,天天向上!"
)
a=
float
(input
("請您輸入分數:"))
if a<
0or a>
100:
print
("你的輸入有誤"
)elif
100>=a>=90:
print
("您的等級為a"
)elif
90>a>=80:
print
("您的等級為b"
)elif
80>a>=70:
print
("您的等級為c"
)elif
70>a>=60:
print
("您的等級為d"
)elif a<60:
print
("您的等級為e"
)
a=
float
(input
("請您輸入分數:"))
if a<
0or a>
100:
print
("你的輸入有誤")if
100>=a>=90:
print
("您的等級為a")if
90>a>=80:
print
("您的等級為b")if
80>a>=70:
print
("您的等級為c")if
70>a>=60:
print
("您的等級為d"
)if a<60:
print
("您的等級為e"
)
a=
float
(input
("請您輸入分數:"))
if a<
0or a>
100:
print
("你的輸入有誤")if
100>=a>=90:
print
("您的等級為a")if
90>a>=80:
print
("您的等級為b")if
80>a>=70:
print
("您的等級為c")if
70>a>=60:
print
("您的等級為d")if
0print
("您的等級為e"
)
學生成績輸入和輸出
description 編寫乙個函式print,列印乙個學生的成績陣列,該陣列中有5個學生的資料,每個學生的資料報括num 學號 name 姓名 score 3 3門課的成績 編寫乙個函式input,用來輸入5個學生的資料。input 5個學生的學號,姓名,3門課的成績 output 5個學生的學號...
python日誌等級 python 日誌輸出級別
import logging logging.basicconfig level logging.debug,format asctime s filename s line lineno d levelname s message s datefmt a,d b y h m s filename ...
學生成績等級
檔名稱 完成日期 2013年 11月1 日 版本號 v1.0 對任務及求解方法的描述部分 輸入描述 學生成績等級問題 問題描述 要求輸入學生成績,給出學生成績等級 程式輸出 成績等級 問題分析 演算法設計 我的程式 心得體會 其實看著難,自己做起來就不難了...