私は文字列の最初の文字を取り、それを大文字にする簡単なプログラムを書いています。解説リストvs forループ
def initials(text):
words = text.split()
a=[word[0].upper() for word in words]
b = '. '.join(a) + '.'
return b
text = "have a good day sir"
print(initials(text))
これは私にリストの理解を使用してほしい結果を与えるでしょう。 しかし、私は、それは以下のようにLOOPの典型的なを使用して動作させることができない、それが私の唯一の最後の繰り返しを与える:
def initials(text):
words = text.split()
for word in words:
a=word[0].upper()
b = '.'.join(a) + '.'
return b
text = "have a good day sir"
print(initials(text))
2番目の例では、最初の一つとして機能していない理由を任意のアイデアを?
2番目の 'initials'関数の' b'は 'words'の各単語ごとに更新されるため...前のイニシャルを「追跡」しません。 – blacksite
新しいリストに結果を追加し、 'join 'に渡す必要があります。 – pylang
' a + = word [0] .upper() 'と書いて、' b ='。 '。join(a)+'という文を取る必要があります。 ''〜forループの中で – phynfo