2017-11-11 5 views
-3

私はPythonの初心者です。ユーザーが多くの行を入力できるようにするコードを書く必要があります。複数の文を書き終えたら、1つの期間を入力してプログラムを停止させ、プログラムは入力された単語の数をユーザーに伝えます。これをどうやってやりますか?ユーザーからの単語の数

print("Enter as many lines of text as you want.") 
print("When you're done, enter a single period on a line by itself.") 

while True: 
    print("> ", end="") 
    line = input() 
    if line == ".": 
     break 
    totalWords = line.split() 
    newWords = totalWords.append(line) 
wordCount = len(newWords) 
print("The number of words entered:" , wordCount, "") 
+2

私がXを望んでいるタイプの「質問」と私が私を好きではないように助けてくれる人は、あなたが試したこととあなたが持っていた問題を示す必要があるので、助言や可能な解決方法でお手伝いします。 – eyllanesc

+2

質問宿題の助けを求めるには、問題を解決するために今までに行った作業の概要と、解決している問題の説明を含める必要があります。 - https://stackoverflow.com/help/on-topic – skrx

+1

あなたの質問を改善するために、次の記事を読むことをお勧めします:[良い質問をするにはどうすればいいですか?](https://stackoverflow.com/help/how-to -ask) – eyllanesc

答えて

0

あなたは蚊帳の外contentを設定する必要があります。ここでは

は、私がこれまで持っているものです。

content = [] 
while True: 
    line = input() 
    if line == ".": 
     break 
    words = line.split() 
    content.append(words) 

words_list = [item for sublist in content for item in sublist] 
print(len(words_list)) 

また、シーケンス/マッピングの項目を変更するほとんどの関数は、Noneを返すん。したがってnewWords = totalWords.append(line)は常にNoneを返します。

+0

ありがとう、これは私にトンを助けてくれました。私はこの問題を最後の3〜4時間にわたって強調してきました。 –