用户自己定义字典类UserDict,它是封装了一个字典类dict。主要使用来拷贝一个字典的数据。而不是共享同一份数据。
class collections.UserDict([initialdata])
本类主要模拟一个字典。
在类成员data里拷贝了一份字典数据,假设没有提供初始数据,就保存为空的方式。
UserDict类实例提供以下的属性:
data
用来保存字典的成员变量。
样例:
#python 3.4
import collections
d = {'a': 2, 'b': 3}
ud = collections.UserDict(d)
print(d, ud)
del d['a']
print(d, ud)
结果输出例如以下:
{'a': 2, 'b': 3} {'a': 2, 'b': 3}
{'b': 3} {'a': 2, 'b': 3}
5.3.8 UserList对象
用户自己定义列表类。主要用来给想继承列表的用户,用户又须要自己定义一些列表的行为。
class collections.UserList([list])
构造一个用户自己定义的列表。
在这个类里,主要管理成员变量data,在初始化时会把列表数据复制到data成员上,假设没有初始化数据,那么成员变量data初始化为空的列表。
样例:
#python 3.4
import collections
l = [1, 5, 6, 8]
ul = collections.UserList(l)
newl = l
print(l, newl, ul)
del l[2]
print(l, newl, ul)
结果输出例如以下:
[1, 5, 6, 8] [1, 5, 6, 8] [1, 5, 6, 8]
[1, 5, 8] [1, 5, 8] [1, 5, 6, 8]
5.3.9 UserString对象
用户自己定义字符串类。能够通过继承这个类来实现字符串的管理功能。
class collections.UserString([sequence])
构造一个字符串或者一个UNICODE字符串对象。
构造时能够从初始化參数里复制到成员变量data,sequence支持bytes,str,UserString等类型。
样例:
#python 3.4
import collections
s = 'this for test'
us = collections.UserString(s)
print(us)
print(us.data)
结果输出例如以下:
this for test
this for test
蔡军生 QQ:9073204 深圳