“徐回回”通过精心收集,向本站投稿了6篇浅谈Python中copy方法的使用,以下是小编为大家整理后的浅谈Python中copy方法的使用,希望能够帮助到大家。
- 目录
篇1:浅谈Python中copy方法的使用
这篇文章主要介绍了浅谈Python中copy方法的使用,Python中的拷贝分为潜拷贝和深拷贝,本文只是简单介绍用法,需要的朋友可以参考下
copy()方法返回字典的浅拷贝,
语法
以下是copy()方法的语法:
dict.copy()
参数
NA
返回值
此方法返回字典的浅拷贝,
例子
下面的例子显示了copy()方法的使用。
#!/usr/bin/pythondict1 = {‘Name‘: ‘Zara‘, ‘Age‘: 7};dict2 = dict1.copy()print “New Dictinary : %s” % str(dict2)
当我们运行上面的程序,它会产生以下结果:
New Dictinary : {‘Age‘: 7, ‘Name‘: ‘Zara‘}
篇2:Python中使用copy模块实现列表(list)拷贝
这篇文章主要介绍了Python中使用copy模块实现列表(list)拷贝,本文讲解了简单列表的复制和复杂列表复制的解决方法,需要的朋友可以参考下
引用是指保存的值为对象的地址,在 Python 语言中,一个变量保存的值除了基本类型保存的是值外,其它都是引用,因此对于它们的使用就需要小心一些。下面举个例子:
问题描述:已知一个列表,求生成一个新的列表,列表元素是原列表的复制
代码如下:
a=[1,2]
b=a
这种做法其实并未真正生成一个新的列表,b指向的仍然是a所指向的对象。这样,如果对a或b的元素进行修改,a,b的值同时发生变化。
解决的方法为:
代码如下:
a=[1,2]
b=a[:]
这样修改a对b没有影响。修改b对a没有影响。
但 这种方法只适用于简单列表,也就是列表中的元素都是基本类型,如果列表元素还存在列表的话,这种方法就不适用了。原因就是,象a[:]这种处理,只是将列 表元素的值生成一个新的列表,如果列表元素也是一个列表,如:a=[1,[2]],那么这种复制对于元素[2]的处理只是复制[2]的引用,而并未生成 [2]的一个新的列表复制。为了证明这一点,测试步骤如下:
代码如下:
>>>a=[1,[2]]
>>>b=a[:]
>>>b
[1, [2]]
>>>a[1].append(3)
>>>a
[1, [2, 3]]
>>>b
[1, [2, 3]]
可见,对a的修改影响到了b,
如果解决这一问题,可以使用copy模块中的deepcopy函数。修改测试如下:
代码如下:
>>>import copy
>>>a=[1,[2]]
>>>b=copy.deepcopy(a)
>>>b
[1, [2]]
>>>a[1].append(3)
>>>a
[1, [2, 3]]
>>>b
[1, [2]]
有时候知道这一点是非常重要的,因为可能你的确需要一个新的列表,并且对这个新的列表进行操作,同时不想影响原来的列表。
篇3:探究Python中isalnum方法的使用
这篇文章主要介绍了探究Python中isalnum方法的使用,是Python入门学习中的基础知识,需要的朋友可以参考下
isalnum()方法检查判断字符串是否包含字母数字字符,
语法
以下是isalnum()方法的语法:
str.isa1num()
参数
NA
返回值
如果字符串中的所有字符字母数字和至少有一个字符此方法返回 true,否则返回false,
例子
下面的例子显示了isalnum()方法的使用。
#!/usr/bin/pythonstr = “this2009”; # No space in this stringprint str.isalnum();str = “this is string example....wow!!!”;print str.isalnum();
当我们运行上面的程序,它会产生以下结果:
篇4:详解Python中find方法的使用
这篇文章主要介绍了详解Python中find()方法的使用,是Python学习中的基础知识,需要的朋友可以参考下
find()方法判断字符串str,如果起始索引beg和结束end索引能找到在字符串或字符串的一个子串中,
语法
以下是find()方法的语法:
str.find(str, beg=0 end=len(string))
参数
str -- 此选项指定要搜索的字符串。
beg -- 这是开始索引,默认情况下为 0,
end -- 这是结束索引,默认情况下它等于字符串的长度。
返回值
如果找到此方法返回的索引,否则返回-1。
例子
下面的例子显示了find()方法的使用。
#!/usr/bin/pythonstr1 = “this is string example....wow!!!”;str2 = “exam”;print str1.find(str2);print str1.find(str2, 10);print str1.find(str2, 40);
当我们运行上面的程序,它会产生以下结果:
篇5:Python中encode方法的使用简介
这篇文章主要介绍了Python中encode方法的使用简介,是Python入门中的基础知识,需要的朋友可以参考下
encode() 方法返回字符串的编码版本,默认编码是当前的默认字符串编码。可给予设置不同的错误处理机制。
语法
以下是encode()方法的语法:
str.encode(encoding=‘UTF-8‘,errors=‘strict‘)
参数
encoding -- 这是所使用的编码。对于所有的编码方案的列表,请访问:标准编码库
errors -- 这可能是给定一个不同的错误处理机制。默认的错误是“严格”,即编码错误提出UnicodeError,
其他可能的值是ignore‘, ‘replace‘, ‘xmlcharrefreplace‘, ‘backslashreplace‘ 并通过codecs.register_error().注册的任何其他名称。
返回值
此方法返回的字符串的编码版本。
例子
下面的例子显示了encode()方法的使用。
#!/usr/bin/pythonstr = “this is string example....wow!!!”;print “Encoded String: ” + str.encode(‘base64‘,‘strict‘)
当我们运行上面的程序,它会产生以下结果:
Encoded String: dGhpcyBpcyBzdHJpbmcgZXhhbXBsZS4uLi53b3chISE=
篇6:详解Python中expandtabs方法的使用
这篇文章主要介绍了详解Python中expandtabs()方法的使用,是Python入门中的基础知识,需要的朋友可以参考下
expandtabs()方法返回制表符,即该字符串的一个副本, ‘\\t‘已经使用的空间,可选择使用给定的tabsize(默认8)扩展。
语法
以下是expandtabs()方法的语法:
str.expandtabs(tabsize=8)
参数
tabsize -- 此选项指定要替换为制表符“\\t‘ 的字符数.
返回值
此方法返回在制表符,即通过空格进行了扩展字符串,‘\\t‘的副本,
例子
下面的例子显示expandtabs()方法的使用。
#!/usr/bin/pythonstr = “this is\\tstring example....wow!!!”;print “Original string: ” + str;print “Defualt exapanded tab: ” + str.expandtabs();print “Double exapanded tab: ” + str.expandtabs(16);
当我们运行上面的程序,它会产生以下结果:
Original string: this is string example....wow!!!Defualt exapanded tab: this is string example....wow!!!Double exapanded tab: this is string example....wow!!!
浅谈Python中copy方法的使用(精选6篇)




