Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3747
  • 博文数量: 1
  • 博客积分: 1460
  • 博客等级: 上尉
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-27 11:54
文章分类
文章存档

2010年(1)

我的朋友
最近访客

分类: Python/Ruby

2010-07-27 12:00:37

今天学习到“引用与副本”这一节时,发现python对这个的处理非常有趣,初学这个,自己写点程序练练手,使用递归来实现deepcopy
 
代码如下:
 

def deepcopy_for_list(a):
    b=[];
    import types
    for i in range(len(a)):
        if(type(a[i]) is types.ListType):
            b.append(deepcopy(a[i]))
        else:
            b.append(a[i])
    return b

上面的代码适合list

下面的代码适合dic

def deepcopy_for_dic(a):
    b={};
    import types
    for k,v in a.iteritems():
        if(type(a[k]) is types.DictType):
            b[k]=deepcopy_for_dic(a[k])
        else:
            b[k]=v
    return b


阅读(389) | 评论(1) | 转发(0) |
0

上一篇:没有了

下一篇:没有了

给主人留下些什么吧!~~

chinaunix网友2010-07-27 22:27:51

不错不错 雁过留声