03 : 言語処理100本ノックでPythonのお勉強

第一章 : 03のお題 円周率

"Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."という文を単語に分解し,各単語の(アルファベットの)文字数を先頭から出現順に並べたリストを作成せよ.

l = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."
words = l.split(" ")
result = []

for word in words:
    count = 0
    for char in word:
        if char.isalpha():
        count += 1
    result.append(count)

print(result)

まず、split関数で文を単語のリストに分ける。 次に結果を入れるための空のリストを用意する そして、単語のリストをfor文で回し、その中で単語の中にあるアルファベットをis.alpha()関数で調べ、アルファベットであれば、 countを1増やす。最後に結果のリストにアルファベットの数の要素をappend()関数で追加する。