2014-09-30 45 views
1

什麼是簡潔的pythonic非插入版本的擴展?我累了寫python中的擴展操作符的非插入版本

x = [ 1,2,3 ] 
x.extend([4,5]) 
f(x) 

只是想:

f(x.extend([4,5], inplace=False)) 

或任何

+3

'F(X + 4, 5])'? (不*相當*相同,參見例如http://stackoverflow.com/q/6645843/3001761) – jonrsharpe 2014-09-30 16:38:04

+0

'f(x .__ add __([4,5]))' – joaquin 2014-09-30 16:45:28

回答

2

如何只使用+操作

def f(l): 
    return l 

x = [1,2,3] 

>>> id(x) 
48474312   # Note the id 

>>> x = f(x + [4,5]) 
[1, 2, 3, 4, 5] 

>>> id(x) 
43637016   # Different id, that means not in-place 
+0

傻我!謝謝。 – Quant 2014-09-30 17:37:12