入力を受け取らず、代わりに名前を要求する関数を作成しようとしています。空の文字列を入力すると、関数は名前ごとに同じ名前を持つ人の数を出力する必要があります。
例えば:
>>>name()
Enter a name: Paul
Enter a name: Bill
Enter a name: John
Enter a name: Paul
Enter a name: Nick
Enter a name: Bill
Enter a name: Bill
Enter a name:
There is 1 person named John
There is 1 person named Nick
There are 2 people named Paul
There are 3 people named Bill
これまでのところ、私は持っています:
def name():
name = input ('Enter a name: ')
count = 0
while name:
if name == input ('Enter a name: '):
count = count + 1
else:
print (count)
正しく数えていないことは確かです。この関数を適切に実行するにはどうすればよいでしょうか? また、異なる名前がいくつあるかわからない場合に、どのようにして異なる入力を区別し、それらを数えるのでしょうか?
また、できれば効率的でなくても勉強しているうちに基本的なコードをお願いしたいです。