summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2009-01-03 21:26:05 (GMT)
committerGeorg Brandl <georg@python.org>2009-01-03 21:26:05 (GMT)
commita1c6a1cea5af1d3c7682a8e99b001b0904480e4d (patch)
tree85461d1ba5237440b36f253b197779190226a294 /Doc
parent48310cd3f2e02ced9ae836ccbcb67e9af3097d62 (diff)
downloadcpython-a1c6a1cea5af1d3c7682a8e99b001b0904480e4d.zip
cpython-a1c6a1cea5af1d3c7682a8e99b001b0904480e4d.tar.gz
cpython-a1c6a1cea5af1d3c7682a8e99b001b0904480e4d.tar.bz2
Merged revisions 68221 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines Remove tabs from the documentation. ........
Diffstat (limited to 'Doc')
-rw-r--r--Doc/extending/newtypes.rst32
-rw-r--r--Doc/howto/curses.rst2
-rw-r--r--Doc/howto/regex.rst2
-rw-r--r--Doc/howto/sockets.rst30
-rw-r--r--Doc/howto/unicode.rst68
-rw-r--r--Doc/library/abc.rst12
-rw-r--r--Doc/library/collections.rst6
-rw-r--r--Doc/library/gettext.rst21
-rw-r--r--Doc/library/multiprocessing.rst2
-rw-r--r--Doc/library/optparse.rst12
-rw-r--r--Doc/library/sched.rst2
-rw-r--r--Doc/library/socket.rst30
-rw-r--r--Doc/tutorial/datastructures.rst2
-rw-r--r--Doc/tutorial/stdlib2.rst2
-rw-r--r--Doc/whatsnew/2.0.rst19
-rw-r--r--Doc/whatsnew/2.2.rst2
-rw-r--r--Doc/whatsnew/2.4.rst8
-rw-r--r--Doc/whatsnew/2.6.rst48
18 files changed, 148 insertions, 152 deletions
diff --git a/Doc/extending/newtypes.rst b/Doc/extending/newtypes.rst
index 66af3bf..ab84a83 100644
--- a/Doc/extending/newtypes.rst
+++ b/Doc/extending/newtypes.rst
@@ -823,8 +823,8 @@ As you can see, the source code closely resembles the :class:`Noddy` examples in
previous sections. We will break down the main differences between them. ::
typedef struct {
- PyListObject list;
- int state;
+ PyListObject list;
+ int state;
} Shoddy;
The primary difference for derived type objects is that the base type's object
@@ -837,10 +837,10 @@ be safely cast to both *PyListObject\** and *Shoddy\**. ::
static int
Shoddy_init(Shoddy *self, PyObject *args, PyObject *kwds)
{
- if (PyList_Type.tp_init((PyObject *)self, args, kwds) < 0)
- return -1;
- self->state = 0;
- return 0;
+ if (PyList_Type.tp_init((PyObject *)self, args, kwds) < 0)
+ return -1;
+ self->state = 0;
+ return 0;
}
In the :attr:`__init__` method for our type, we can see how to call through to
@@ -859,18 +859,18 @@ the module's :cfunc:`init` function. ::
PyMODINIT_FUNC
PyInit_shoddy(void)
{
- PyObject *m;
+ PyObject *m;
- ShoddyType.tp_base = &PyList_Type;
- if (PyType_Ready(&ShoddyType) < 0)
- return NULL;
+ ShoddyType.tp_base = &PyList_Type;
+ if (PyType_Ready(&ShoddyType) < 0)
+ return NULL;
- m = PyModule_Create(&shoddymodule);
- if (m == NULL)
- return NULL;
+ m = PyModule_Create(&shoddymodule);
+ if (m == NULL)
+ return NULL;
- Py_INCREF(&ShoddyType);
- PyModule_AddObject(m, "Shoddy", (PyObject *) &ShoddyType);
+ Py_INCREF(&ShoddyType);
+ PyModule_AddObject(m, "Shoddy", (PyObject *) &ShoddyType);
}
Before calling :cfunc:`PyType_Ready`, the type structure must have the
@@ -1113,7 +1113,7 @@ structure::
typedef struct PyMethodDef {
char *ml_name; /* method name */
PyCFunction ml_meth; /* implementation function */
- int ml_flags; /* flags */
+ int ml_flags; /* flags */
char *ml_doc; /* docstring */
} PyMethodDef;
diff --git a/Doc/howto/curses.rst b/Doc/howto/curses.rst
index 7e69006..1c191ad 100644
--- a/Doc/howto/curses.rst
+++ b/Doc/howto/curses.rst
@@ -297,7 +297,7 @@ So, to display a reverse-video status line on the top line of the screen, you
could code::
stdscr.addstr(0, 0, "Current mode: Typing mode",
- curses.A_REVERSE)
+ curses.A_REVERSE)
stdscr.refresh()
The curses library also supports color on those terminals that provide it, The
diff --git a/Doc/howto/regex.rst b/Doc/howto/regex.rst
index d83665f..39a8578 100644
--- a/Doc/howto/regex.rst
+++ b/Doc/howto/regex.rst
@@ -917,7 +917,7 @@ module::
InternalDate = re.compile(r'INTERNALDATE "'
r'(?P<day>[ 123][0-9])-(?P<mon>[A-Z][a-z][a-z])-'
- r'(?P<year>[0-9][0-9][0-9][0-9])'
+ r'(?P<year>[0-9][0-9][0-9][0-9])'
r' (?P<hour>[0-9][0-9]):(?P<min>[0-9][0-9]):(?P<sec>[0-9][0-9])'
r' (?P<zonen>[-+])(?P<zoneh>[0-9][0-9])(?P<zonem>[0-9][0-9])'
r'"')
diff --git a/Doc/howto/sockets.rst b/Doc/howto/sockets.rst
index 69130c4..9f7fe68 100644
--- a/Doc/howto/sockets.rst
+++ b/Doc/howto/sockets.rst
@@ -189,30 +189,30 @@ length message::
"""
def __init__(self, sock=None):
- if sock is None:
- self.sock = socket.socket(
- socket.AF_INET, socket.SOCK_STREAM)
- else:
- self.sock = sock
+ if sock is None:
+ self.sock = socket.socket(
+ socket.AF_INET, socket.SOCK_STREAM)
+ else:
+ self.sock = sock
def connect(self, host, port):
self.sock.connect((host, port))
def mysend(self, msg):
- totalsent = 0
- while totalsent < MSGLEN:
- sent = self.sock.send(msg[totalsent:])
- if sent == 0:
- raise RuntimeError("socket connection broken")
- totalsent = totalsent + sent
+ totalsent = 0
+ while totalsent < MSGLEN:
+ sent = self.sock.send(msg[totalsent:])
+ if sent == 0:
+ raise RuntimeError("socket connection broken")
+ totalsent = totalsent + sent
def myreceive(self):
msg = ''
while len(msg) < MSGLEN:
- chunk = self.sock.recv(MSGLEN-len(msg))
- if chunk == '':
- raise RuntimeError("socket connection broken")
- msg = msg + chunk
+ chunk = self.sock.recv(MSGLEN-len(msg))
+ if chunk == '':
+ raise RuntimeError("socket connection broken")
+ msg = msg + chunk
return msg
The sending code here is usable for almost any messaging scheme - in Python you
diff --git a/Doc/howto/unicode.rst b/Doc/howto/unicode.rst
index 8200723..60f7d7d 100644
--- a/Doc/howto/unicode.rst
+++ b/Doc/howto/unicode.rst
@@ -32,8 +32,8 @@ For a while people just wrote programs that didn't display accents. I remember
looking at Apple ][ BASIC programs, published in French-language publications in
the mid-1980s, that had lines like these::
- PRINT "FICHIER EST COMPLETE."
- PRINT "CARACTERE NON ACCEPTE."
+ PRINT "FICHIER EST COMPLETE."
+ PRINT "CARACTERE NON ACCEPTE."
Those messages should contain accents, and they just look wrong to someone who
can read French.
@@ -91,11 +91,11 @@ standard, a code point is written using the notation U+12ca to mean the
character with value 0x12ca (4810 decimal). The Unicode standard contains a lot
of tables listing characters and their corresponding code points::
- 0061 'a'; LATIN SMALL LETTER A
- 0062 'b'; LATIN SMALL LETTER B
- 0063 'c'; LATIN SMALL LETTER C
- ...
- 007B '{'; LEFT CURLY BRACKET
+ 0061 'a'; LATIN SMALL LETTER A
+ 0062 'b'; LATIN SMALL LETTER B
+ 0063 'c'; LATIN SMALL LETTER C
+ ...
+ 007B '{'; LEFT CURLY BRACKET
Strictly, these definitions imply that it's meaningless to say 'this is
character U+12ca'. U+12ca is a code point, which represents some particular
@@ -527,19 +527,19 @@ path will return the byte string versions of the filenames. For example,
assuming the default filesystem encoding is UTF-8, running the following
program::
- fn = 'filename\u4500abc'
- f = open(fn, 'w')
- f.close()
+ fn = 'filename\u4500abc'
+ f = open(fn, 'w')
+ f.close()
- import os
- print(os.listdir(b'.'))
- print(os.listdir('.'))
+ import os
+ print(os.listdir(b'.'))
+ print(os.listdir('.'))
will produce the following output::
- amk:~$ python t.py
- [b'.svn', b'filename\xe4\x94\x80abc', ...]
- ['.svn', 'filename\u4500abc', ...]
+ amk:~$ python t.py
+ [b'.svn', b'filename\xe4\x94\x80abc', ...]
+ ['.svn', 'filename\u4500abc', ...]
The first list contains UTF-8-encoded filenames, and the second list contains
the Unicode versions.
@@ -636,26 +636,26 @@ Version 1.1: Feb-Nov 2008. Updates the document with respect to Python 3 change
- [ ] Unicode introduction
- [ ] ASCII
- [ ] Terms
- - [ ] Character
- - [ ] Code point
- - [ ] Encodings
- - [ ] Common encodings: ASCII, Latin-1, UTF-8
+ - [ ] Character
+ - [ ] Code point
+ - [ ] Encodings
+ - [ ] Common encodings: ASCII, Latin-1, UTF-8
- [ ] Unicode Python type
- - [ ] Writing unicode literals
- - [ ] Obscurity: -U switch
- - [ ] Built-ins
- - [ ] unichr()
- - [ ] ord()
- - [ ] unicode() constructor
- - [ ] Unicode type
- - [ ] encode(), decode() methods
+ - [ ] Writing unicode literals
+ - [ ] Obscurity: -U switch
+ - [ ] Built-ins
+ - [ ] unichr()
+ - [ ] ord()
+ - [ ] unicode() constructor
+ - [ ] Unicode type
+ - [ ] encode(), decode() methods
- [ ] Unicodedata module for character properties
- [ ] I/O
- - [ ] Reading/writing Unicode data into files
- - [ ] Byte-order marks
- - [ ] Unicode filenames
+ - [ ] Reading/writing Unicode data into files
+ - [ ] Byte-order marks
+ - [ ] Unicode filenames
- [ ] Writing Unicode programs
- - [ ] Do everything in Unicode
- - [ ] Declaring source code encodings (PEP 263)
+ - [ ] Do everything in Unicode
+ - [ ] Declaring source code encodings (PEP 263)
- [ ] Other issues
- - [ ] Building Python (UCS2, UCS4)
+ - [ ] Building Python (UCS2, UCS4)
diff --git a/Doc/library/abc.rst b/Doc/library/abc.rst
index bf3b0b1..8ab90cc 100644
--- a/Doc/library/abc.rst
+++ b/Doc/library/abc.rst
@@ -42,15 +42,15 @@ This module provides the following class:
Register *subclass* as a "virtual subclass" of this ABC. For
example::
- from abc import ABCMeta
+ from abc import ABCMeta
- class MyABC(metaclass=ABCMeta):
- pass
+ class MyABC(metaclass=ABCMeta):
+ pass
- MyABC.register(tuple)
+ MyABC.register(tuple)
- assert issubclass(tuple, MyABC)
- assert isinstance((), MyABC)
+ assert issubclass(tuple, MyABC)
+ assert isinstance((), MyABC)
You can also override this method in an abstract base class:
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index f41abd6..4045d2e 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -41,7 +41,7 @@ ABC Inherits Abstract Methods Mixin
:class:`Hashable` ``__hash__``
:class:`Iterable` ``__iter__``
:class:`Iterator` :class:`Iterable` ``__next__`` ``__iter__``
-:class:`Sized` ``__len__``
+:class:`Sized` ``__len__``
:class:`Callable` ``__call__``
:class:`Sequence` :class:`Sized`, ``__getitem__`` ``__contains__``. ``__iter__``, ``__reversed__``.
@@ -68,7 +68,7 @@ ABC Inherits Abstract Methods Mixin
:class:`MutableMapping` :class:`Mapping` ``__getitem__`` Inherited Mapping methods and
``__setitem__``, ``pop``, ``popitem``, ``clear``, ``update``,
``__delitem__``, and ``setdefault``
- ``__iter__``, and
+ ``__iter__``, and
``__len__``
:class:`MappingView` :class:`Sized` ``__len__``
@@ -84,7 +84,7 @@ particular functionality, for example::
size = None
if isinstance(myvar, collections.Sized):
- size = len(myvar)
+ size = len(myvar)
Several of the ABCs are also useful as mixins that make it easier to develop
classes supporting container APIs. For example, to write a class supporting
diff --git a/Doc/library/gettext.rst b/Doc/library/gettext.rst
index cd229e7..a295c0e 100644
--- a/Doc/library/gettext.rst
+++ b/Doc/library/gettext.rst
@@ -551,10 +551,9 @@ translation until later. A classic example is::
animals = ['mollusk',
'albatross',
- 'rat',
- 'penguin',
- 'python',
- ]
+ 'rat',
+ 'penguin',
+ 'python', ]
# ...
for a in animals:
print(a)
@@ -569,10 +568,9 @@ Here is one way you can handle this situation::
animals = [_('mollusk'),
_('albatross'),
- _('rat'),
- _('penguin'),
- _('python'),
- ]
+ _('rat'),
+ _('penguin'),
+ _('python'), ]
del _
@@ -595,10 +593,9 @@ Another way to handle this is with the following example::
animals = [N_('mollusk'),
N_('albatross'),
- N_('rat'),
- N_('penguin'),
- N_('python'),
- ]
+ N_('rat'),
+ N_('penguin'),
+ N_('python'), ]
# ...
for a in animals:
diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst
index 7e44423..e5dd1ed 100644
--- a/Doc/library/multiprocessing.rst
+++ b/Doc/library/multiprocessing.rst
@@ -35,7 +35,7 @@ Windows.
>>> from multiprocessing import Pool
>>> p = Pool(5)
>>> def f(x):
- ... return x*x
+ ... return x*x
...
>>> p.map(f, [1,2,3])
Process PoolWorker-1:
diff --git a/Doc/library/optparse.rst b/Doc/library/optparse.rst
index 3805d96..4e9bb23 100644
--- a/Doc/library/optparse.rst
+++ b/Doc/library/optparse.rst
@@ -543,8 +543,8 @@ Continuing with the parser defined above, adding an
:class:`OptionGroup` to a parser is easy::
group = OptionGroup(parser, "Dangerous Options",
- "Caution: use these options at your own risk. "
- "It is believed that some of them bite.")
+ "Caution: use these options at your own risk. "
+ "It is believed that some of them bite.")
group.add_option("-g", action="store_true", help="Group option.")
parser.add_option_group(group)
@@ -558,12 +558,12 @@ This would result in the following help output::
-q, --quiet be vewwy quiet (I'm hunting wabbits)
-fFILE, --file=FILE write output to FILE
-mMODE, --mode=MODE interaction mode: one of 'novice', 'intermediate'
- [default], 'expert'
+ [default], 'expert'
Dangerous Options:
- Caution: use of these options is at your own risk. It is believed that
- some of them bite.
- -g Group option.
+ Caution: use of these options is at your own risk. It is believed that
+ some of them bite.
+ -g Group option.
.. _optparse-printing-version-string:
diff --git a/Doc/library/sched.rst b/Doc/library/sched.rst
index cab7f60..f93c9b5 100644
--- a/Doc/library/sched.rst
+++ b/Doc/library/sched.rst
@@ -58,7 +58,7 @@ Example::
... print(time.time())
... Timer(5, print_time, ()).start()
... Timer(10, print_time, ()).start()
- ... time.sleep(11) # sleep while time-delay events execute
+ ... time.sleep(11) # sleep while time-delay events execute
... print(time.time())
...
>>> print_some_times()
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index c2e3d91..f399dae 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -797,17 +797,17 @@ sends traffic to the first one connected successfully. ::
socket.SOCK_STREAM, 0, socket.AI_PASSIVE):
af, socktype, proto, canonname, sa = res
try:
- s = socket.socket(af, socktype, proto)
+ s = socket.socket(af, socktype, proto)
except socket.error as msg:
- s = None
- continue
+ s = None
+ continue
try:
- s.bind(sa)
- s.listen(1)
+ s.bind(sa)
+ s.listen(1)
except socket.error as msg:
- s.close()
- s = None
- continue
+ s.close()
+ s = None
+ continue
break
if s is None:
print('could not open socket')
@@ -832,16 +832,16 @@ sends traffic to the first one connected successfully. ::
for res in socket.getaddrinfo(HOST, PORT, socket.AF_UNSPEC, socket.SOCK_STREAM):
af, socktype, proto, canonname, sa = res
try:
- s = socket.socket(af, socktype, proto)
+ s = socket.socket(af, socktype, proto)
except socket.error as msg:
- s = None
- continue
+ s = None
+ continue
try:
- s.connect(sa)
+ s.connect(sa)
except socket.error as msg:
- s.close()
- s = None
- continue
+ s.close()
+ s = None
+ continue
break
if s is None:
print('could not open socket')
diff --git a/Doc/tutorial/datastructures.rst b/Doc/tutorial/datastructures.rst
index 95497b4..454472c 100644
--- a/Doc/tutorial/datastructures.rst
+++ b/Doc/tutorial/datastructures.rst
@@ -195,7 +195,7 @@ Using the :keyword:`if` clause we can filter the stream::
Tuples can often be created without their parentheses, but not here::
- >>> [x, x**2 for x in vec] # error - parens required for tuples
+ >>> [x, x**2 for x in vec] # error - parens required for tuples
File "<stdin>", line 1, in ?
[x, x**2 for x in vec]
^
diff --git a/Doc/tutorial/stdlib2.rst b/Doc/tutorial/stdlib2.rst
index f581972..4be3275 100644
--- a/Doc/tutorial/stdlib2.rst
+++ b/Doc/tutorial/stdlib2.rst
@@ -62,7 +62,7 @@ formatting numbers with group separators::
>>> locale.format("%d", x, grouping=True)
'1,234,567'
>>> locale.format("%s%.*f", (conv['currency_symbol'],
- ... conv['frac_digits'], x), grouping=True)
+ ... conv['frac_digits'], x), grouping=True)
'$1,234,567.80'
diff --git a/Doc/whatsnew/2.0.rst b/Doc/whatsnew/2.0.rst
index 75205d4..f5326d7 100644
--- a/Doc/whatsnew/2.0.rst
+++ b/Doc/whatsnew/2.0.rst
@@ -281,7 +281,7 @@ write the following to do it::
# containing the substring S.
sublist = filter( lambda s, substring=S:
string.find(s, substring) != -1,
- L)
+ L)
Because of Python's scoping rules, a default argument is used so that the
anonymous function created by the :keyword:`lambda` statement knows what
@@ -293,7 +293,7 @@ List comprehensions have the form::
[ expression for expr in sequence1
for expr2 in sequence2 ...
- for exprN in sequenceN
+ for exprN in sequenceN
if condition ]
The :keyword:`for`...\ :keyword:`in` clauses contain the sequences to be
@@ -368,7 +368,7 @@ instance with an incremented value.
def __init__(self, value):
self.value = value
def __iadd__(self, increment):
- return Number( self.value + increment)
+ return Number( self.value + increment)
n = Number(5)
n += 3
@@ -852,13 +852,12 @@ the PyXML package::
from distutils.core import setup, Extension
expat_extension = Extension('xml.parsers.pyexpat',
- define_macros = [('XML_NS', None)],
- include_dirs = [ 'extensions/expat/xmltok',
- 'extensions/expat/xmlparse' ],
- sources = [ 'extensions/pyexpat.c',
- 'extensions/expat/xmltok/xmltok.c',
- 'extensions/expat/xmltok/xmlrole.c',
- ]
+ define_macros = [('XML_NS', None)],
+ include_dirs = [ 'extensions/expat/xmltok',
+ 'extensions/expat/xmlparse' ],
+ sources = [ 'extensions/pyexpat.c',
+ 'extensions/expat/xmltok/xmltok.c',
+ 'extensions/expat/xmltok/xmlrole.c', ]
)
setup (name = "PyXML", version = "0.5.4",
ext_modules =[ expat_extension ] )
diff --git a/Doc/whatsnew/2.2.rst b/Doc/whatsnew/2.2.rst
index 28ecb81..ec435f7 100644
--- a/Doc/whatsnew/2.2.rst
+++ b/Doc/whatsnew/2.2.rst
@@ -295,7 +295,7 @@ will be used in methods to call a method in the superclass; for example,
class D (B,C):
def save (self):
- # Call superclass .save()
+ # Call superclass .save()
super(D, self).save()
# Save D's private information here
...
diff --git a/Doc/whatsnew/2.4.rst b/Doc/whatsnew/2.4.rst
index d608c2b..4ce8132 100644
--- a/Doc/whatsnew/2.4.rst
+++ b/Doc/whatsnew/2.4.rst
@@ -396,10 +396,10 @@ single class called :class:`Popen` whose constructor supports a number of
different keyword arguments. ::
class Popen(args, bufsize=0, executable=None,
- stdin=None, stdout=None, stderr=None,
- preexec_fn=None, close_fds=False, shell=False,
- cwd=None, env=None, universal_newlines=False,
- startupinfo=None, creationflags=0):
+ stdin=None, stdout=None, stderr=None,
+ preexec_fn=None, close_fds=False, shell=False,
+ cwd=None, env=None, universal_newlines=False,
+ startupinfo=None, creationflags=0):
*args* is commonly a sequence of strings that will be the arguments to the
program executed as the subprocess. (If the *shell* argument is true, *args*
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index 750f7db..5ee71f4 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -590,30 +590,30 @@ multiple of 4.
def factorial(queue, N):
- "Compute a factorial."
- # If N is a multiple of 4, this function will take much longer.
- if (N % 4) == 0:
- time.sleep(.05 * N/4)
+ "Compute a factorial."
+ # If N is a multiple of 4, this function will take much longer.
+ if (N % 4) == 0:
+ time.sleep(.05 * N/4)
- # Calculate the result
- fact = 1L
- for i in range(1, N+1):
- fact = fact * i
+ # Calculate the result
+ fact = 1L
+ for i in range(1, N+1):
+ fact = fact * i
- # Put the result on the queue
- queue.put(fact)
+ # Put the result on the queue
+ queue.put(fact)
if __name__ == '__main__':
- queue = Queue()
+ queue = Queue()
- N = 5
+ N = 5
- p = Process(target=factorial, args=(queue, N))
- p.start()
- p.join()
+ p = Process(target=factorial, args=(queue, N))
+ p.start()
+ p.join()
- result = queue.get()
- print 'Factorial', N, '=', result
+ result = queue.get()
+ print 'Factorial', N, '=', result
A :class:`Queue` is used to communicate the input parameter *N* and
the result. The :class:`Queue` object is stored in a global variable.
@@ -634,12 +634,12 @@ across 5 worker processes and retrieve a list of results::
from multiprocessing import Pool
def factorial(N, dictionary):
- "Compute a factorial."
- ...
+ "Compute a factorial."
+ ...
p = Pool(5)
result = p.map(factorial, range(1, 1000, 10))
for v in result:
- print v
+ print v
This produces the following output::
@@ -1889,9 +1889,9 @@ changes, or look through the Subversion logs for all the details.
('id', 'name', 'type', 'size')
>>> var = var_type(1, 'frequency', 'int', 4)
- >>> print var[0], var.id # Equivalent
+ >>> print var[0], var.id # Equivalent
1 1
- >>> print var[2], var.type # Equivalent
+ >>> print var[2], var.type # Equivalent
int int
>>> var._asdict()
{'size': 4, 'type': 'int', 'id': 1, 'name': 'frequency'}
@@ -2050,8 +2050,8 @@ changes, or look through the Subversion logs for all the details.
>>> list(itertools.product([1,2,3], [4,5,6]))
[(1, 4), (1, 5), (1, 6),
- (2, 4), (2, 5), (2, 6),
- (3, 4), (3, 5), (3, 6)]
+ (2, 4), (2, 5), (2, 6),
+ (3, 4), (3, 5), (3, 6)]
The optional *repeat* keyword argument is used for taking the
product of an iterable or a set of iterables with themselves,