Python-在函数内修改输入变量

时间:2019-03-04 22:21:27

标签: python python-3.x

以下代码:

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。

谢谢!

1 个答案:

答案 0 :(得分:1)

由于gcc返回新字符串,因此不会更改原始字符串。字符串在Python中是不可变的。