Python 将列表作为参数传递[重复]

2023-11-25

如果我要运行这段代码:

def function(y):
    y.append('yes')
    return y

example = list()
function(example)
print(example)

即使我没有直接更改变量“example”,为什么它会返回['yes'],以及如何修改代码以使“example”不受该函数的影响?


Python 中的一切都是参考。如果您希望避免这种行为,您必须使用以下命令创建原始副本的新副本list()。如果列表包含更多参考文献,您需要使用深拷贝()

def modify(l):
 l.append('HI')
 return l

def preserve(l):
 t = list(l)
 t.append('HI')
 return t

example = list()
modify(example)
print(example)

example = list()
preserve(example)
print(example)

outputs

['HI']
[]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 将列表作为参数传递[重复] 的相关文章

随机推荐

  • 在java文件外部定义内部类

    我想创建一个类 ClassB 作为内部类ClassA 但我想写在外面ClassA java file 我怎样才能做到这一点 这将是很多内部类 并且ClassA java文件将是enormous UPDATE我真正想做的是定义十个类 它们只能
  • 有没有办法为 Spring HATEOAS `ControllerLinkBuilder` 设置主机和端口?

    Spring HATEOAS 提供了方便ControllerLinkBuilder创建指向控制器方法的链接 这些方法将作为 href 添加到返回给客户端的 JSON XML 中 例如 resource add linkTo methodOn
  • 跟踪(直接)文件下载的最佳方法

    跟踪直接文件下载的最佳方法是什么 Google Analytics 仅适用于 JavaScript 无法跟踪直接文件下载 最好的是安全且自己的托管解决方案 放心使用 htaccess RewriteEngine on RewriteRule
  • 为什么ORACLE很多表默认12c?

    创建一个新的数据库 基础和高级 这是我第一次接触Oracle 我不知道为什么有那么多表 触发器 视图和其他对象 而只想创建一个空的关系数据库 有没有其他方法可以做到这一点 或者有什么我错过理解的事情 谢谢 Capture 这些对象的所有者是
  • 如何删除 vscode 右侧滚动条上的符号?

    How can I remove the symbols on the right scrollbar in VSCode As per 这个 Github 问题 最近的解决方案是使用 useworkbench colorCustomiza
  • 特征中的 typedef 与类中的 typedef

    我正在出于教育目的查看 Eigen 源代码 我注意到对于每个具体的类模板X在层次结构中 有一个internal traits
  • 使用带有 Doctrine 2 的装置时发生致命错误

    我是 Symblog 2 初学者 我正在关注本教程适用于 Symblog2 我已经创建了我的数据模型并尝试使用将测试数据填充到我的数据库中学说 2 赛程 我下载了必要的包并将以下内容添加到我的autoload php Doctrine Co
  • PowerMockito 模拟单个静态方法并在另一个静态方法中返回对象

    我已经编写了测试用例来使用 PowerMockito 的 mockStatic 功能来模拟静态类和方法 但我正在努力在另一个静态方法中模拟一个静态方法 我确实看到了一些例子 包括this但他们都没有真正帮助我 或者我不理解实际功能 我一无所
  • 如何使用Python在Mac中控制鼠标?

    在 OS X 上使用 Python 移动鼠标 并可能单击 的最简单方法是什么 这只是为了快速原型设计 它不必很优雅 尝试以下代码 这一页 它定义了几个函数 mousemove and mouseclick 它与 Apple 在 Python
  • 我们可以在过程宏属性中获取调用者的源代码位置吗?

    我需要获取每个方法的调用者的源位置 我正在尝试创建一个proc macro attribute捕获位置并打印它 proc macro attribute pub fn get location attr TokenStream item T
  • Git 默认文件(第一次拉取后忽略)

    你会如何在 git 中设置这个场景 我的源有一个设置文件 其中包含数据库连接凭据等配置设置 这是 Drupal 源 我指的是 settings php 当开发人员克隆源代码时 他们需要进入并更改特定于其环境的设置 当然 这些变化不应该被推回
  • 为什么 angular.isNumber() 没有按预期工作?

    看起来好像 AngularJS 的angular isNumber不管用 它不适用于数字字符串 难道我做错了什么 我应该只使用isNaN angular isNumber 95 55 false angular isNumber 95 55
  • 重命名 WooCommerce 订单状态

    我想将 WooCommerce 订单状态从 已完成 重命名为 订单已收到 我可以编辑位于 wc order functions php 中的以下脚本 但我不想修改任何核心文件或使用插件 是否可以使用子主题中的脚本覆盖 woocommerce
  • JAXB 避免保存默认值

    有没有什么方法可以让 JAXB 不保存值是 Element 注释中指定的默认值的字段 然后在从 XML 加载 null 或空元素时将值设置为该值 一个例子 class Example XmlElement defaultValue defa
  • 使用 create-react-app 时使用自定义构建输出文件夹

    Facebook 提供了一个create react app command构建反应应用程序 当我们跑步时npm run build 我们看到输出 build文件夹 npm 运行构建 将用于生产的应用程序构建到构建文件夹 正确的是 在生产模
  • 如何从 JavaScript 中包含重复项的数组中获取唯一值的数组? [复制]

    这个问题在这里已经有答案了 Given a 0 1 1 2 3 3 3 数组 结果应该是 0 1 2 3 Edited ES6解决方案 new Set a 选择 Array from new Set a 老回应 O n 2 不要将其用于大型
  • 正则表达式仅在所需字符串之前未直接包含字符时匹配

    我正在尝试解决这个CodingBat问题 如果给定字符串包含 xyz 其中 xyz 前面没有直接加句点 则返回 true 因此 xxyz 有效 但 x xyz 无效 xyzThere abcxyz truexyzThere abc xyz
  • 可以使用AJAX+跨域+jsonp测试URL是否可达吗?

    我正在使用 JQuery 从 URL 获取信息并将其异步显示在我的页面上 URL 来自其他域 因此我使用 JSONP 来获取数据 效果很好 但是 当远程 URL 关闭时 偶尔会发生 我的页面会挂起jQuery AJAX不调用 成功 或 错误
  • 在 Angular2 TypeScript 中注释(出)代码

    我有以下 Angular2 TypeScript 代码 其中有一个部分根据 Javascript 约定被注释掉 Component selector my app template h1 title h1 h2 lene name h2 d
  • Python 将列表作为参数传递[重复]

    这个问题在这里已经有答案了 如果我要运行这段代码 def function y y append yes return y example list function example print example 即使我没有直接更改变量 ex