pup*_*l07 3 python copy object
我是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)
Run Code Online (Sandbox Code Playgroud)
但strcpy似乎没有起作用:
>>obj1=CString("Hello World")
>>obj2=CString("Hai World!")
>>puts(obj1)
Hello World!
>>puts(obj2)
Hai World!
>>strcpy(obj1,obj2)
>>puts(obj1)
Hello World!
Run Code Online (Sandbox Code Playgroud)
我错误地分配了copy.copy(cstring2)吗?
这条线
cstring1 = copy.copy(cstring2)
Run Code Online (Sandbox Code Playgroud)
只改变了当地称为变量cstring1,它并没有在所谓的外部范围改变变量obj1.
有关更多信息,请查看此其他stackoverflow问题.
| 归档时间: |
|
| 查看次数: |
6691 次 |
| 最近记录: |