Method 1: Connect directly via the plus (+) operator
1 |
website = ‘python‘ + ‘tab‘ + ‘.com‘ |
Method 2:join Method
12 |
listStr = [ ‘python‘ , ‘tab‘ , ‘.com‘ ] website = ‘‘.join(listStr) |
Method 3: Replace
1 |
website = ‘%s%s%s‘ % ( ‘python‘ , ‘tab‘ , ‘.com‘ ) |
The reason why Python uses + for string connections is inefficient because the strings in Python are immutable types, a new string is generated when using + to concatenate two strings, and a new string is required to re-request the memory, when the string of successive additions is many (a+b+c+d+ e+f+ ...) , inefficiency is inevitable.
Method 2 uses a slightly more complex, but high-efficiency connection to multiple characters, with only one memory request. And if the character of the list is connected, this method must be the preferred
In addition, when using string connection, note the different types of direct connection error conditions: Unicode and strings can be directly connected, strings and Chinese characters can be directly connected, but Unicode and Chinese characters can not be directly connected
Reference:
1, https://www.cnblogs.com/chenjingyi/p/5741901.html This blog conclusion There is a problem, the test method is still re-application of memory
Python string Join method efficiency comparison