ホームページ  >  記事  >  バックエンド開発  >  Python での複数行文字列の水平連結

Python での複数行文字列の水平連結

PHPz
PHPz転載
2023-08-27 23:49:061349ブラウズ

Python での複数行文字列の水平連結

Python では、文字列の連結は、2 つ以上の文字列を 1 つの文字列に結合できる一般的な操作です。文字列を垂直方向に連結する (つまり、文字列を上下に) 連結するのは簡単ですが、文字列を水平方向に (つまり、並べて) 連結するには、特に複数行の文字列を扱う場合、追加の処理が必要になります。この記事では、Python で複数行の文字列を横方向に連結するさまざまな方法を検討します。

方法 1:演算子を使用する

演算子を使用すると、2 つ以上の文字列を 1 つの文字列に結合できます。ただし、複数行の文字列を扱う場合、演算子を使用すると、目的の水平方向の連結が生成されない可能性があります。

###構文### リーリー

ここで、「 " 演算子は Python の加算に使用されます。数値を加算したり、文字列を連結 (結合) したりするために使用できます。数値オペランドとともに使用すると、加算が実行され、合計が返されます。文字列オペランドとともに使用すると、文字列を連結し、結合した結果を返します。

Example

の中国語訳は次のとおりです:

Example

以下の例では、演算子は文字列を垂直方向に連結し、文字列が次々に追加されます。水平方向の連結を実現するには、文字列の行ごとの連結を考慮する必要があります。

リーリー ###出力### リーリー

方法 2:zip() 関数と join() を使用する

zip() 関数と join() メソッドを使用して、複数行の文字列を水平方向に結合できます。 zip() 関数は 2 つ以上の反復可能オブジェクトを受け入れ、各反復可能オブジェクトの要素を含むタプルを生成する反復子を返します。この機能を使用すると、複数行の文字列の対応する行を反復処理できます。

###構文### リーリー

ここでは、 join() 関数が文字列区切り文字で呼び出され、入力として反復可能 (リストやタプルなど) を受け取ります。各要素間の区切り文字列を使用して反復可能要素を連結し、結果の文字列.

###構文### リーリー

ここでは、zip() 関数を使用して、複数の反復可能 (リストやタプルなど) を 1 つの反復可能タプルに結合します。各タプルには入力反復可能からの対応する要素が含まれており、結果の反復可能は次の目的で使用できます。たとえば、複数のシーケンスから結合された要素を同時に処理するループ内で使用します。

Example

の中国語訳は次のとおりです:

Example

以下の例では、最初に、split('\n') メソッドを使用して、複数行の文字列 string1 と string2 を個別の行に分割します。split('\n') メソッドは、各改行文字 (\n) で文字列を分割します。 ) 行のリストを返します。次に、zip() 関数を使用して、string1 と string2 の対応する行を繰り返し処理します。zip() 関数は、各文字列の行をペアにして、対応する行とのタプルを作成します。リストを利用します。 join() メソッドを使用して、行の各ペアをスペース文字で結合することを理解します。これにより、水平方向に連結された行のリストが作成されます。最後に、 '\n'.join() メソッドを使用して行を結合し直します。各行の間に改行文字 (\n) を入れて、水平方向に連結された複数行の文字列を作成します。

リーリー ###出力### リーリー

方法 3: textwrap モジュールを使用する

textwrap

モジュールには、複数行の文字列を書式設定および操作するためのさまざまな関数が用意されています。textwrap モジュールを使用して複数行の文字列を水平方向に連結するには、wrap() 関数を使用して、折り返された行を結合します。

###構文### リーリー

ここで、textwrap.wrap() メソッドは、テキスト文字列と幅を入力パラメータとして受け取り、文字列のリストを返します。各文字列は、指定された幅に折り返されたテキスト行を表します。追加のオプションのキーワード引数を指定して、パッケージ化プロセスの他の側面を制御できます。

Example

の中国語訳は次のとおりです:

Example

上の例では、最初に textwrap モジュールをインポートしました。このモジュールは、複数行の文字列の折り返しと書式設定に必要な関数を提供します。次に、textwrap.wrap() 関数を使用して、string1 と string2 の行を、折り返された行を含むリストにラップします。

textwrap.wrap()

この関数は、各行が指定された幅を超えないことを保証します。次に、

max(len(wrapped_lines1)

,

len(wrapped_lines2))

を使用して、2 つのラップされたリスト間の最大行数を決定します。最後に、

ljust()

メソッドを使用して、wrap_lines1 と Wrapd_lines2 の対応する折り返された行を位置合わせし、それらが同じ長さになるようにします。各行のペアの間にスペース文字を追加し、

'\n'.join()

メソッドを使用してそれらを改行文字で結合します。

import textwrap

string1 = '''Hello
This is a multiline string
With multiple lines'''

string2 = '''World
In Python
Concatenation'''

wrapped_lines1 = textwrap.wrap(string1)
wrapped_lines2 = textwrap.wrap(string2)

max_lines = max(len(wrapped_lines1), len(wrapped_lines2))

horizontal_concatenation = '\n'.join(
    wrapped_lines1[i].ljust(len(max(wrapped_lines1, key=len)))
    + ' '
    + wrapped_lines2[i].ljust(len(max(wrapped_lines2, key=len)))
    for i in range(max_lines)
)

print(horizontal_concatenation)

输出

Hello This is a multiline string With multiple lines World In Python Concatenation                   

结论

在本文中,我们讨论了如何在Python中使用不同的方法水平连接多行字符串。我们探讨了两种不同的水平连接方法:使用zip()函数和join()方法,以及利用textwrap模块。这些技术提供了有效的方式来水平连接多行字符串,使您能够以有效的方式操作和格式化字符串数据。

以上がPython での複数行文字列の水平連結の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。