python函数可否修改不可变实参?

举个例子
我想在python里写一个swap函数

a = 10
b = 20
swap(a, b)
print(a, b)  # 我想得到的是20,10

但如果直接写

def swap(x ,y):
  x, y = y, x

就不行。因为传入的是不可变实参类型int。
但我现在就想修改它,可不可以做到?就像c语言里面传指针修改实参那样?

试试这个,下面有讲解,如果对你有用,点击右上角给个采纳哦~

def swap(x ,y):
  x, y = y, x
  return x,y
print(swap(10,20))

不可以

重新理解了一下你的意思,你的意思应该是如何做到在函数内的局部作用域下修改全局作用域下的变量,这里用到global关键字,作用是声明函数中可以用也可以修改函数外的变量

a = 1
def change():
    global a
    a=3
    print(a)
change()
print(a)