是否可以像在C和Java中一样在Python中的if语句,循环和函数调用中修改变量?
例如:
def mymethod(c):
if(c == 0):
return c
return mymethod(c-=1) #invalid syntax
另一个例子:
i=0
while((i+=1)<10): #invalid syntax
print(i)
如果不是那是为什么?
答案 0 :(得分:1)
只要数据类型是可变的
def modified(data):
data['a'] = 5
x = {'b':7}
modified(x)
print(x)
def increment_a(data):
data['a'] += 1
return data['a']
x = {'a':1}
while increment_a(x) < 10:
print(x)
但是字符串和整数是不可变的