このコードを書くより良い方法はありますか?エラーはありませんが、入力したすべての文字がリストに並べ替えられて印刷されているようです。
複数ある場合でも、一般的な文字を文字列で印刷したい。
これが私が持っているものです
mystr = input("Enter a string:")
s = list(mystr)
letter_counter = {}
for word in mystr:
if word in letter_counter:
letter_counter[word] += 1
else:
letter_counter[word] = 1
user_letter = sorted(letter_counter, key = letter_counter.get, reverse = True)
number_1 = user_letter[:2]
print(number_1)
正しい文字を印刷できる唯一の方法は、制限を設定することです。
number_1 = user_letter[:2]
たとえば、次のように入力した場合:
mystr = input("Thomas Jones")
コードでは、印刷出力は次のようになります
print(number_1)
[o], [s]
どちらが正しいですが、制限がからに設定されている2
場合3
number_1 = user_letter[:3]
あるべきではないものが[o] [s] [a]
1つだけあると印刷されます。a
ユーザーが入力した単語の数に関係なく、リミッターなしで正しい繰り返し文字が表示されるようにしたいと思います。
私は自由が行き詰まっていますこれを修正する方法がわかりません