有没有办法在python函数调用中进行变量赋值?像
这样的东西curr= []
curr.append(num = num/2)
答案 0 :(得分:8)
Nopey。作业是statement。它不是expression,而是C派生语言。
答案 1 :(得分:4)
我非常肯定我记得创建Python的原因之一就是避免这些可憎的事情,而是更喜欢可读性而不是假设的聪明: - )
以下是什么,请注意,以下是错误的?
curr= []
num = num/2
curr.append(num)
答案 2 :(得分:0)
即使你可以,副作用表达式也是使你的代码不可读的好方法,但是没有... Python将其解释为关键字参数。你最接近的是:
class Assigner(object):
def __init__(self, value):
self.value = value
def assign(self, newvalue):
self.value = newvalue
return self.value
# ...
num = Assigner(2)
curr = []
curr.append(num.assign(num.value / 2))