while loopとbreakの使い方について質問です。
この下の一つ目のパラメーター(long_word)はstringで中にアルファベットがたくさん入っています
そして、二つ目のパラメーター(char)もstringで一つだけアルファベットが入っています。
その時に、一つ目のパラメーターのアルファベットをwhile loopを使って一つずつ調べて二つ目のパラメーターと同じアルファベットが出たらその前までのアルファベットをreturnさせたいです。
私は下のような式を作ったけれどうまくいきませんでした。
どこが間違っているのか教えていただけないでしょうか?
python
1def letters_up_to_char(long_word, char): 2 new_string = '' 3 i = 0 4 while long_word[i] != char: 5 long_word[i] += new_string 6 if long_word[i] == char: 7 break 8 i += 1 9 return new_string
P.S
ちなみにこれを実行したら下のようなエラーが出ました。
long_word[i] += new_string
TypeError: 'str' object does not support item assignment
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/16 22:29