ホームページ >バックエンド開発 >Python チュートリアル >不変の Python 文字列の個々の文字を変更するには?
エラー: 'str' オブジェクトは項目の割り当てをサポートしていません
Python 文字列は不変です。つまり、一度作成された個々の文字は変更できません。変更されました。コード s2[j] = s1[i] のように、項目の割り当てを使用して文字を直接変更しようとすると、「TypeError: 'str' object doesn't support item assign.」というエラーが発生します。
この動作これは、文字列が変更可能であり、この方法で変更できる C などの言語とは対照的です。 Python でこの制限を克服するには、次の代替案を検討してください。
文字列連結の使用
個々の文字に直接割り当てる代わりに、文字列を連結して新しい文字列を構築できます。希望の文字。例:
<code class="python">s1 = "Hello World" s2 = "" j = 0 for i in range(len(s1)): s2 += s1[i]</code>
ここでは、s1 の文字を 1 つずつ追加して s2 が作成されます。
リストへの変換
Python 文字列一時的にリストに変換し、変更してから文字列に戻すことができます。例:
<code class="python">s1 = "Hello World" list1 = list(s1) list1[5] = 'u' s1 = ''.join(list1)</code>
この場合、s1 はリスト list1 に変換され、5 番目の文字が変更されます。次に list1 は、要求された変更を加えて文字列 s1 に変換されます。
以上が不変の Python 文字列の個々の文字を変更するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。