【问题标题】:Using a reference to create a new object in python在python中使用引用创建一个新对象
【发布时间】:2020-07-04 20:35:10
【问题描述】:

我认为这是一个纯粹的 Python“问题”,但需要一些上下文:

我正在创建一个简单的 Python 脚本来使用库 ezodf 修改 ods 文档。 Ods 文件类似于 Excel 文档:包含包含值、格式等的单元格的表格。 源来自我无法编辑的模板,因为我无权访问它,并且我需要与我拥有的格式相同的新单元格,但不能使用 ezodf 创建它们。


让我们只使用“A”列来简化

我希望 cell["A5"] 成为 cell["A3"] 的副本,但如果我这样做 cell["A5"] = cell["A3"] 单元格“A3”移动到“A5”,而不是用副本填充单元格“A5”,我无法再访问“A3”

我的问题是,我该怎么做才能将单元格[“A5”] 分配给“A3”的副本而不是分配给“A3”?

【问题讨论】:

  • 查看 python copy module。在这种情况下,您可以只写cell["A5"] = copy.copy(cell["A3"])。 (或使用deepcopy,取决于您的用例)
  • 对我来说似乎是特定于库的,因为根据“单元”中对象的设计,这可以工作,但这个库的设计不同。

标签: python python-3.x variables global-variables


【解决方案1】:

感谢Maksymilian 向我展示了this module,我已经尝试使用cell["A5"] = copy.deepcopy(cell["A3"]) 在原始“A3”单元格的基础上创建新单元格,它的工作原理就像一个魅力

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-19
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    相关资源
    最近更新 更多