Rumah  >  Artikel  >  pembangunan bahagian belakang  >  什么是copy函数?直接赋值与copy的区别是什么?

什么是copy函数?直接赋值与copy的区别是什么?

乌拉乌拉~
乌拉乌拉~asal
2018-08-18 17:55:088357semak imbas

这篇文章我们来学习一下关于python字典之中的python copy函数的相关知识,python copy是什么意思,他有什么作用都将会在接下来的文章之中得到解答。

概括描述

Python 字典(Dictionary) copy() 函数返回一个字典的浅复制。

语法

copy()方法语法:

dict.copy()

参数

NA。

返回值

返回一个字典的浅复制。

实例

以下实例展示了 copy()函数的使用方法:

# !/usr/bin/python

dict1 = {'Name': 'Zara', 'Age': 7};

dict2 = dict1.copy()
print "New Dictinary : %s" % str(dict2)

以上实例输出结果为:

New Dictinary : {'Age': 7, 'Name': 'Zara'}

直接赋值与copy的区别

可以通过以下实例说明:

# !/usr/bin/python
# -*- coding: UTF-8 -*-

dict1 = {'user': 'runoob', 'num': [1, 2, 3]}

dict2 = dict1  # 浅拷贝: 引用对象
dict3 = dict1.copy()  # 浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用

# 修改 data 数据
dict1['user'] = 'root'
dict1['num'].remove(1)

# 输出结果
print(dict1)
print(dict2)
print(dict3)

实例中 dict2 其实是 dict1 的引用(别名),所以输出结果都是一致的,dict3 父对象进行了深拷贝,不会随dict1 修改而修改,子对象是浅拷贝所以随 dict1 的修改而修改。

{'num': [2, 3], 'user': 'root'}
{'num': [2, 3], 'user': 'root'}
{'num': [2, 3], 'user': 'runoob'}

以上就是这篇文章所讲的全部内容,python中字典内置的 copy函数。希望所说的内容以及所举的例子能对你有所帮助。

更多相关知识,请访问php中文网Python教程栏目。

Atas ialah kandungan terperinci 什么是copy函数?直接赋值与copy的区别是什么?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn