簡體   English   中英

打開包裝並增加價值

[英]Unpacking and increase the values

我想知道這是否有可能。 解壓縮后,我想增加兩個值,而不必創建兩個臨時變量。 通過多次分配和拆包,這有可能嗎? 我開始在這里嘗試:

a, b = 1, 1                                                                                                                                                                           
for i in [1,2,3]: 
  a, b += 1, 1                                                                                                                                                                      

File "<ipython-input-2-a1e761cf8ae1>", line 2
  a, b += 1, 1
  ^
SyntaxError: illegal expression for augmented assignment
for i in [1,2,3]: 
  a, b += (1, 1)                                                                                                                                                                    

File "<ipython-input-3-9317a6e51de4>", line 2
  a, b += (1, 1)
  ^
SyntaxError: illegal expression for augmented assignment
for i in [1,2,3]: 
  (a, b) += (1, 1)                                                                                                                                                                  

File "<ipython-input-4-446db199ce6f>", line 2
  (a, b) += (1, 1)
   ^
SyntaxError: illegal expression for augmented assignment
for i in [1,2,3]: 
  a += 1 

也許map可以幫助您!

a,b =1,1
a,b = map(lambda x,y:x+y, [a,b],[1,1])

在將給定函數應用於給定可迭代項的每個項目(列表,元組等)之后,map()函數返回結果的映射對象。

並非完全符合您的要求,但可能會有所幫助。 在您拆包之前,Numpy可以輕松添加值。

import numpy as np

ar = np.array([1,1])
ar +=  1
a,b = ar

收益率:

(2,2)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM