”+“:相比join效率低,浪费空间,每次”+“的过程中,每生成一个中间结果,都会复制上一次的结果,开辟一个新的空间,如n个字符串用+进行连接,则每次需要(n-1)+(n-2)+...+1的复制操作,耗时O(n²);
join:在一开始的时候就计算并开辟需要的空间开辟,然后一次性将每个字符串放入空间中,避免不必要的浪费。耗时O(n)
转自《编写高质量代码 改善Python程序的91个建议》
”+“:相比join效率低,浪费空间,每次”+“的过程中,每生成一个中间结果,都会复制上一次的结果,开辟一个新的空间,如n个字符串用+进行连接,则每次需要(n-1)+(n-2)+...+1的复制操作,耗时O(n²);
join:在一开始的时候就计算并开辟需要的空间开辟,然后一次性将每个字符串放入空间中,避免不必要的浪费。耗时O(n)
转自《编写高质量代码 改善Python程序的91个建议》