以下代码:
def function(X):
X.upper()
if X == 'YES':
print ('success')
else:
print ('fail')
function('yes')
产生:
fail
但是此代码:
def function2(X):
Y = X.upper()
if Y == 'YES':
print ('success')
else:
print ('fail')
function2('yes')
给我:
success
这是为什么?我希望能够在函数中编辑输入变量。有比将变量值复制到新变量更有效的方法吗?我正在运行Python 3.7.1。
谢谢!
答案 0 :(得分:1)
由于gcc
返回新字符串,因此不会更改原始字符串。字符串在Python中是不可变的。