python - 在 Python 中复制对象?

标签 python object copy

我是 Python 的新手,所以我尝试编写一个类来在 C 中模拟字符串函数:

class CString:

  def __init__(self,str):
        self.value=[]
        self.value.extend(list(str))

def strcpy(cstring1,cstring2):
      import copy
      cstring1=copy.copy(cstring2)

def puts(cstring1):
    print ''.join(cstring1.value)

但 strcpy 似乎不起作用:

>>obj1=CString("Hello World")
>>obj2=CString("Hai World!")
>>puts(obj1)
Hello World!
>>puts(obj2)
Hai World!
>>strcpy(obj1,obj2)
>>puts(obj1)
Hello World!

我是否错误地分配了 copy.copy(cstring2)?

最佳答案

线

cstring1 = copy.copy(cstring2)

仅更改名为 cstring1本地变量,不会更改名为 obj1 的外部作用域中的变量>.

看看this other stackoverflow question获取更多信息。

关于python - 在 Python 中复制对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10778602/

相关文章:

python - 展平 3-d numpy 数组

python - 在 python 中拟合线性变换

vector 元素内的 c++ 对象拷贝重复次数超过预期

oop - 面向对象范式中松耦合和紧耦合有什么区别?

java - 从一个文件高效复制到另一个文件

python - Django generics.ListAPIView 接受 POST 方法

python3 : do a for loop once more when looped over the whole file

php - 将对象的对象转换为对象数组(PHP、Laravel)

file - linux权限move_uploaded_file

csv - Cassandra .csv导入错误:batch too large