多于2个字符串的拼接,禁止使用“+”,而应该用join
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                多于2个字符串的拼接,禁止使用“+”,而应该用join
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                在python效率的討論問題中字符串的連接效率有提過,多數建議使用join來代替"+"進行字符串連接
python中一切皆對象 字符串對象就是c api中得stringobject.c看python源碼的objects文件可以找到
1."+"。使用加號連接2個字符串會調用靜態函數string_concat(register PyStringObject *a ,register PyObject * b),在這個函數中會開辟一塊大小是a+b的內存的和的存儲單元,然后將a,b字符串拷貝進去,試想一下,如果是n個字符串相連? 那么會開辟n-1次內存,是比較耗費資源的
2.對于使用join函數 "".join([a,b])? ?會調用string_join函數? 會計算列表的長度? 一次分配一塊內存然后拷貝,所以n個字符串相連 開辟內存的次數是1次
所以如果只有2個相連效率區別不大? 但是數據多了就會有問題
總結
以上是生活随笔為你收集整理的多于2个字符串的拼接,禁止使用“+”,而应该用join的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: @即装饰器
- 下一篇: Python陷阱:为什么不能用可变对象作
