ITP1_8_C 文字のカウント
解答
from string import ascii_lowercase, ascii_uppercase count = [0]*26 while True: try: sentence = input() except: break for ch in sentence: c = ascii_lowercase.find(ch) if -1 < c: count[c] += 1 c = ascii_uppercase.find(ch) if -1 < c: count[c] += 1 for i,j in zip(ascii_lowercase, count): print(i + ' : ' + str(j))
zip()関数は複数のイテラブルをfor文で使用したいときに使う
AOJでよくある、~が入力されたら終了という指定が今回はなかったため、
try文でエラーの際に止まるよう記述
ascii_lowercase == abcdefghijklmnopqrstuvwxyz ascii_uppercase == ABCDEFGHIJKLMNOPQRSTUVWXYZ
配列を作成しようと思ったが、便利なもの見つけたのでモジュール使った