目次
方法 2: 結合方法
方法 3:
を置換する3 つの方法の違いについて話しましょう
次の実験は、文字列を説明するために使用されます。接続効率の問題。
ホームページ バックエンド開発 Python チュートリアル Python 文字列接続を使用する 3 つの方法とその効率性、および適用可能なシナリオの詳細な紹介

Python 文字列接続を使用する 3 つの方法とその効率性、および適用可能なシナリオの詳細な紹介

Mar 19, 2017 pm 03:27 PM

python文字列連結には、一般に 3 つの方法があります:

方法 1: プラス記号 (+) を使用して直接接続演算子

website = 'python' + 'tab' + '.com'
ログイン後にコピー

方法 2: 結合方法

listStr = ['python', 'tab', '.com'] 
website = ''.join(listStr)
ログイン後にコピー

方法 3:

website = '%s%s%s' % ('python', 'tab', '.com')
ログイン後にコピー

を置換する3 つの方法の違いについて話しましょう

方法 1 はシンプルで直接使用できますが、インターネット上の多くの人がこの方法は効率が悪いと言っています

Python で文字列の連結に + を使用するのが非効率である理由は、次のとおりです。 Python の文字列は不変型です。+ を使用して 2 つの文字列を接続すると、新しい文字列が生成されます。連続した文字列が多数追加される場合は、再度メモリを適用する必要があります。 +d+e+f+...)、効率が低いのは避けられません

方法 2 は使用方法が少し複雑ですが、複数のキャラクターを接続する場合に効率的であり、メモリ アプリケーションは 1 つだけになります。そして、リストの文字を接続する場合は、この方法を最初の選択肢にする必要があります

方法 3: 文字列の書式設定、この方法は非常に一般的に使用されます。私もこの方法をお勧めします

次の実験は、文字列を説明するために使用されます。接続効率の問題。

比较对象:加号连接 VS join连接
python版本: python2.7
系统环境:CentOS
ログイン後にコピー

実験 1:

# -*- coding: utf-8 -*-
from time import time
def method1():
    t = time()
    for i in xrange(100000):
        s = 'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'+'pythontab'
    print time() - t
def method2():
    t = time()
    for i in xrange(100000):
        s = ''.join(['pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab','pythontab'])
    print time() -t
method1()
method2()
ログイン後にコピー

結果:

0.641695976257
0.341440916061
ログイン後にコピー

実験 2:

# -*- coding: utf-8 -*-
from time import time
def method1():
    t = time()
    for i in xrange(100000):
        s = 'pythontab'+'pythontab'+'pythontab'+'pythontab'
    print time() - t
def method2():
    t = time()
    for i in xrange(100000):
        s = ''.join(['pythontab','pythontab','pythontab','pythontab'])
    print time() -t
method1()
method2()
ログイン後にコピー

結果:

0.0265691280365
0.0522091388702
ログイン後にコピー

上記 2 つの実験の唯一の違いは、文字列の連結数です。

結論: プラス記号接続の効率が低いのは、複数の文字列が連続して接続されている場合に発生します。接続数が少ない場合、プラス記号接続の効率は結合接続よりも高くなります。

以上がPython 文字列接続を使用する 3 つの方法とその効率性、および適用可能なシナリオの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? Apr 01, 2025 pm 05:09 PM

LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? Apr 01, 2025 pm 11:15 PM

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

文字列を介してオブジェクトを動的に作成し、Pythonでメソッドを呼び出す方法は? 文字列を介してオブジェクトを動的に作成し、Pythonでメソッドを呼び出す方法は? Apr 01, 2025 pm 11:18 PM

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...

人気のあるPythonライブラリとその用途は何ですか? 人気のあるPythonライブラリとその用途は何ですか? Mar 21, 2025 pm 06:46 PM

この記事では、numpy、pandas、matplotlib、scikit-learn、tensorflow、django、flask、and requestsなどの人気のあるPythonライブラリについて説明し、科学的コンピューティング、データ分析、視覚化、機械学習、Web開発、Hの使用について説明します。

uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? Apr 01, 2025 pm 10:51 PM

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

正規表現とは何ですか? 正規表現とは何ですか? Mar 20, 2025 pm 06:25 PM

正規表現は、プログラミングにおけるパターンマッチングとテキスト操作のための強力なツールであり、さまざまなアプリケーションにわたるテキスト処理の効率を高めます。

See all articles