Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / v9 / html / python / lib / comparison-to-builtin-set.html
CommitLineData
920dae64
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="lib.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="lib.html" title='Python Library Reference' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="prev" href="immutable-transforms.html" />
13<link rel="parent" href="module-sets.html" />
14<link rel="next" href="module-itertools.html" />
15<meta name='aesop' content='information' />
16<title>5.15.4 Comparison to the built-in set types </title>
17</head>
18<body>
19<DIV CLASS="navigation">
20<div id='top-navigation-panel' xml:id='top-navigation-panel'>
21<table align="center" width="100%" cellpadding="0" cellspacing="2">
22<tr>
23<td class='online-navigation'><a rel="prev" title="5.15.3 Protocol for automatic"
24 href="immutable-transforms.html"><img src='../icons/previous.png'
25 border='0' height='32' alt='Previous Page' width='32' /></A></td>
26<td class='online-navigation'><a rel="parent" title="5.15 sets "
27 href="module-sets.html"><img src='../icons/up.png'
28 border='0' height='32' alt='Up One Level' width='32' /></A></td>
29<td class='online-navigation'><a rel="next" title="5.16 itertools "
30 href="module-itertools.html"><img src='../icons/next.png'
31 border='0' height='32' alt='Next Page' width='32' /></A></td>
32<td align="center" width="100%">Python Library Reference</td>
33<td class='online-navigation'><a rel="contents" title="Table of Contents"
34 href="contents.html"><img src='../icons/contents.png'
35 border='0' height='32' alt='Contents' width='32' /></A></td>
36<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
37 border='0' height='32' alt='Module Index' width='32' /></a></td>
38<td class='online-navigation'><a rel="index" title="Index"
39 href="genindex.html"><img src='../icons/index.png'
40 border='0' height='32' alt='Index' width='32' /></A></td>
41</tr></table>
42<div class='online-navigation'>
43<b class="navlabel">Previous:</b>
44<a class="sectref" rel="prev" href="immutable-transforms.html">5.15.3 Protocol for automatic</A>
45<b class="navlabel">Up:</b>
46<a class="sectref" rel="parent" href="module-sets.html">5.15 sets </A>
47<b class="navlabel">Next:</b>
48<a class="sectref" rel="next" href="module-itertools.html">5.16 itertools </A>
49</div>
50<hr /></div>
51</DIV>
52<!--End of Navigation Panel-->
53
54<H2><A NAME="SECTION0071540000000000000000"></A><A NAME="comparison-to-builtin-set"></A>
55<BR>
565.15.4 Comparison to the built-in <tt class="class">set</tt> types
57
58</H2>
59
60<P>
61The built-in <tt class="class">set</tt> and <tt class="class">frozenset</tt> types were designed based
62on lessons learned from the <tt class="module">sets</tt> module. The key differences are:
63
64<P>
65
66<UL>
67<LI><tt class="class">Set</tt> and <tt class="class">ImmutableSet</tt> were renamed to <tt class="class">set</tt> and
68 <tt class="class">frozenset</tt>.
69</LI>
70<LI>There is no equivalent to <tt class="class">BaseSet</tt>. Instead, use
71 <code>isinstance(x, (set, frozenset))</code>.
72</LI>
73<LI>The hash algorithm for the built-ins performs significantly better
74 (fewer collisions) for most datasets.
75</LI>
76<LI>The built-in versions have more space efficient pickles.
77</LI>
78<LI>The built-in versions do not have a <tt class="method">union_update()</tt> method.
79 Instead, use the <tt class="method">update()</tt> method which is equivalent.
80</LI>
81<LI>The built-in versions do not have a <tt class="method">_repr(sort=True)</tt> method.
82 Instead, use the built-in <tt class="function">repr()</tt> and <tt class="function">sorted()</tt>
83 functions: <code>repr(sorted(s))</code>.
84</LI>
85<LI>The built-in version does not have a protocol for automatic conversion
86 to immutable. Many found this feature to be confusing and no one
87 in the community reported having found real uses for it.
88</LI>
89</UL>
90
91<DIV CLASS="navigation">
92<div class='online-navigation'>
93<p></p><hr />
94<table align="center" width="100%" cellpadding="0" cellspacing="2">
95<tr>
96<td class='online-navigation'><a rel="prev" title="5.15.3 Protocol for automatic"
97 href="immutable-transforms.html"><img src='../icons/previous.png'
98 border='0' height='32' alt='Previous Page' width='32' /></A></td>
99<td class='online-navigation'><a rel="parent" title="5.15 sets "
100 href="module-sets.html"><img src='../icons/up.png'
101 border='0' height='32' alt='Up One Level' width='32' /></A></td>
102<td class='online-navigation'><a rel="next" title="5.16 itertools "
103 href="module-itertools.html"><img src='../icons/next.png'
104 border='0' height='32' alt='Next Page' width='32' /></A></td>
105<td align="center" width="100%">Python Library Reference</td>
106<td class='online-navigation'><a rel="contents" title="Table of Contents"
107 href="contents.html"><img src='../icons/contents.png'
108 border='0' height='32' alt='Contents' width='32' /></A></td>
109<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
110 border='0' height='32' alt='Module Index' width='32' /></a></td>
111<td class='online-navigation'><a rel="index" title="Index"
112 href="genindex.html"><img src='../icons/index.png'
113 border='0' height='32' alt='Index' width='32' /></A></td>
114</tr></table>
115<div class='online-navigation'>
116<b class="navlabel">Previous:</b>
117<a class="sectref" rel="prev" href="immutable-transforms.html">5.15.3 Protocol for automatic</A>
118<b class="navlabel">Up:</b>
119<a class="sectref" rel="parent" href="module-sets.html">5.15 sets </A>
120<b class="navlabel">Next:</b>
121<a class="sectref" rel="next" href="module-itertools.html">5.16 itertools </A>
122</div>
123</div>
124<hr />
125<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
126</DIV>
127<!--End of Navigation Panel-->
128<ADDRESS>
129See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
130</ADDRESS>
131</BODY>
132</HTML>