我试图同时递增多个变量,并将其放在一行中。如果有办法的话,最具蟒蛇色彩的方式是什么呢?
发布于 2014-01-31 08:29:11
如果想要写一行,可以尝试多个赋值,但不使用+=语法:
a, b, c = a+1, b+1, c+1或者,对于更具蟒蛇风格的解决方案,请避免使用一行代码:
a += 1
b += 1
c += 1发布于 2014-01-31 08:31:47
说你有
a, b, c = [1, 2, 3]定义以下内容后:
def add1(x):
return x+1您可以执行以下操作:
print(map(f,[a, b, c])) # prints [2, 3, 4]这意味着下面这行代码将为您提供所需的内容:
a, b, c = map(add1,[a, b, c])这比以下代码更容易做到:
a, b, c = a+1, b+1, c+1以防你有一个很大的数组。此外,您还可以保持可读性并获得您的“单行代码”。
https://stackoverflow.com/questions/21470380
复制相似问题