python - Python通过赋值传递但不保留值
问题描述
我在大型代码库中遇到了这个问题,所以我在下面创建了一个小型复制器:
在这里,我有以下两个函数,func2() 和 func3()
def func2(a,b):
a = 'new-value'
b = b+1
return a, b
def func4():
x,y = 'old-value',3
func2(x,y)
print(x,y)
我得到的输出是:
>>> func4()
old-value 3
我认为Python是传递赋值,所以func4()
应该覆盖x
和y
值new-value
4
我有什么误解?另外,我怎样才能将上面的代码更改为 make x
、y
havenew-value
和4
任何帮助是极大的赞赏!。
解决方案
推荐阅读
- sql - 我的 ASP.NET 网站受到 SQL 注入攻击
- python - Python one-liner 获取枚举类列表的所有值的组合列表
- python - Dask Dataframes 不能容忍其中的 NA 值吗?获取 ValueError,无法转换非有限值
- asp.net-core - 类型 [某些视图] 与导入的类型 [默认视图] 冲突 (CS0436)
- javascript - 在 TypeScript 中使用 JS React 组件:JSX 元素类型“MyComponent”不是 JSX 元素的构造函数
- dll - Microsoft.CppCommon.targets(171,5):错误 MSB6006:“cmd.exe”退出,代码为 -1073741515
- chapel - 使用块分发遇到未解决的访问错误
- powershell - 用于获取服务描述以及列出它的参数是什么
- cassandra - CQL:在地图中转义单引号
属性 - java - 用户未创建 -JSON 异常:输入在字符 0 处结束