「.join()」が文字列全体ではなく整数から個々の文字を挿入するのはなぜですか?

DDD
リリース: 2024-11-09 08:48:02
オリジナル
281 人が閲覧しました

Why does

Python の ".join()" メソッドを理解する

".join()" メソッドは、Python で不可欠な文字列操作ツールです。開発者が複数の文字列を効率的に連結できるようにする Python。このメソッドは文字列のリストを取得し、各要素の間に指定された区切り文字を挿入することによってそれらを結合します。

この例では、「.join()」を使用して整数の文字列表現を結合するときに予期しない動作が発生しました。ランダムに生成された文字列を使用します。結果「5wlfgALGbXOahekxSs9wlfgALGbXOahekxSs5」は不可解に思えるかもしれません。

なぜこれが起こったのかを理解するには、「.join()」の仕組みを詳しく調べる必要があります。このメソッドは、個々の文字列ではなく、文字列のリストを操作します。整数などの非文字列入力を検出すると、それを自動的に文字列表現に変換します。あなたの場合、整数 595 は文字列「595」に変換されました。

ただし、文字列「595」全体をランダムな文字の間に挿入する代わりに、「.join()」はそれを次のリストとして扱いました。個々の文字: ["5"、"9"、"5"]。この動作は出力でも明らかで、強調表示された文字「5」、「9」、「5」は、各文字がランダムな文字の間に挿入されたことを示しています。

整数とランダムな文字列の場合は、代わりに " " 演算子を使用する必要があります。 「 」は、「.join()」とは異なり、区切り文字を使用せずに 2 つの文字列を直接結合します。

コード内で「.join()」を「 」に置き換えます。

print(array.array('c', random.sample(string.ascii_letters, 20 - len(strid)))
.tostring() + strid)
ログイン後にコピー

ランダムな文字列の末尾に整数 595 が追加された、期待どおりの出力が得られます。

以上が「.join()」が文字列全体ではなく整数から個々の文字を挿入するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート