python中連線字串用join還是

2021-09-18 07:05:40 字數 695 閱讀 6794

join的效能明顯好於+。這是為什麼呢?

原因是這樣的,python字串是不可變物件,當用操作符+連線字串的時候,每執行一次+都會申請一塊新的記憶體,然後複製上乙個+操作的結果和本次操作的右操作符到這塊記憶體空間,因此用+連線字串的時候會涉及好幾次記憶體申請和複製。而join在連線字串的時候,會先計算需要多大的記憶體存放結果,然後一次性申請所需記憶體並將字串複製過去,這是為什麼join的效能優於+的原因。所以在連線字串陣列的時候,我們應考慮優先使用join。

from time import time

def plus_test():

t = time()

s = ''

for i in xrange(1000000):

s += 'test'

print(time() - t)

def join_test():

t = time()

li =

for i in xrange(1000000):

s = ''.join(li)

print(time() - t)

plus_test()

join_test()

輸出:

0.6990399360656738

0.09200525283813477

python常用連線字串

1.使用佔位符 print s s s one two three view code 2.號連線 字串是不可變物件,每次改變會申請一塊新的記憶體,操作符 連線字串的時候會涉及好幾次記憶體申請和複製,當字串量大的時候不建議使用效能會降低 print hello world view code 3.j...

連線字串

建立資料庫連線 sqlconnection con new sqlconnection con.connectionstring system.configuration.configurationmanager.connectionstrings con tostring 配置檔案中已經配置好連線...

ef mysql連線字串 EF中的連線字串

對映檢視是每個實體集和關聯的對映中指定的可轉換的可執行表示。包括兩部分 查詢檢視 表示從資料庫架構轉到概念架構所需的規範裝換 更新檢視 表示從概念模型轉到資料庫架構所需的規範轉換 使用ef power tools工具可以對code first進行反向工程。既可以直接根據資料庫成成對應的 當沒有為上下...