diff options
author | Georg Brandl <georg@python.org> | 2009-01-03 21:18:54 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2009-01-03 21:18:54 (GMT) |
commit | 48310cd3f2e02ced9ae836ccbcb67e9af3097d62 (patch) | |
tree | 04c86b387c11bfd4835a320e76bbb2ee24626e0d /Doc/library | |
parent | 3d3558a4653fcfcbdcbb75bda5d61e93c48f4d51 (diff) | |
download | cpython-48310cd3f2e02ced9ae836ccbcb67e9af3097d62.zip cpython-48310cd3f2e02ced9ae836ccbcb67e9af3097d62.tar.gz cpython-48310cd3f2e02ced9ae836ccbcb67e9af3097d62.tar.bz2 |
Remove trailing whitespace.
Diffstat (limited to 'Doc/library')
72 files changed, 406 insertions, 406 deletions
diff --git a/Doc/library/abc.rst b/Doc/library/abc.rst index b03fc83..bf3b0b1 100644 --- a/Doc/library/abc.rst +++ b/Doc/library/abc.rst @@ -128,7 +128,7 @@ It also provides the following decorators: A decorator indicating abstract methods. Using this decorator requires that the class's metaclass is :class:`ABCMeta` or - is derived from it. + is derived from it. A class that has a metaclass derived from :class:`ABCMeta` cannot be instantiated unless all of its abstract methods and properties are overridden. @@ -163,7 +163,7 @@ It also provides the following decorators: A subclass of the built-in :func:`property`, indicating an abstract property. Using this function requires that the class's metaclass is :class:`ABCMeta` or - is derived from it. + is derived from it. A class that has a metaclass derived from :class:`ABCMeta` cannot be instantiated unless all of its abstract methods and properties are overridden. The abstract properties can be called using any of the normal diff --git a/Doc/library/aifc.rst b/Doc/library/aifc.rst index 7f7d7fe..e3bb51a 100644 --- a/Doc/library/aifc.rst +++ b/Doc/library/aifc.rst @@ -17,7 +17,7 @@ samples in a file. AIFF-C is a newer version of the format that includes the ability to compress the audio data. .. warning:: - + Some operations may only work under IRIX; these will raise :exc:`ImportError` when attempting to import the :mod:`cl` module, which is only available on IRIX. diff --git a/Doc/library/array.rst b/Doc/library/array.rst index 2fb4f8a..4900509 100644 --- a/Doc/library/array.rst +++ b/Doc/library/array.rst @@ -52,7 +52,7 @@ The module defines the following type: Return a new array whose items are restricted by *typecode*, and initialized from the optional *initializer* value, which must be a list, object - supporting the buffer interface, or iterable over elements of the + supporting the buffer interface, or iterable over elements of the appropriate type. If given a list or string, the initializer is passed to the new array's diff --git a/Doc/library/ast.rst b/Doc/library/ast.rst index b8bc896..2cf9da1 100644 --- a/Doc/library/ast.rst +++ b/Doc/library/ast.rst @@ -114,7 +114,7 @@ and classes for traversing abstract syntax trees: Parse an expression into an AST node. Equivalent to ``compile(expr, filename, mode, ast.PyCF_ONLY_AST)``. - + .. function:: literal_eval(node_or_string) Safely evaluate an expression node or a string containing a Python @@ -192,7 +192,7 @@ and classes for traversing abstract syntax trees: .. method:: generic_visit(node) This visitor calls :meth:`visit` on all children of the node. - + Note that child nodes of nodes that have a custom visitor method won't be visited unless the visitor calls :meth:`generic_visit` or visits them itself. diff --git a/Doc/library/audioop.rst b/Doc/library/audioop.rst index 9eb315f..fe6e86f 100644 --- a/Doc/library/audioop.rst +++ b/Doc/library/audioop.rst @@ -260,7 +260,7 @@ sample and subtract the whole output sample from the input sample:: in_test = inputdata[pos*2:] ipos, factor = audioop.findfit(in_test, out_test) # Optional (for better cancellation): - # factor = audioop.findfactor(in_test[ipos*2:ipos*2+len(out_test)], + # factor = audioop.findfactor(in_test[ipos*2:ipos*2+len(out_test)], # out_test) prefill = '\0'*(pos+ipos)*2 postfill = '\0'*(len(inputdata)-len(prefill)-len(outputdata)) diff --git a/Doc/library/bdb.rst b/Doc/library/bdb.rst index 555b634..b1cf200 100644 --- a/Doc/library/bdb.rst +++ b/Doc/library/bdb.rst @@ -325,7 +325,7 @@ Finally, the module defines the following functions: Check whether we should break here, depending on the way the breakpoint *b* was set. - + If it was set via line number, it checks if ``b.line`` is the same as the one in the frame also passed as argument. If the breakpoint was set via function name, we have to check we are in the right frame (the right function) and if diff --git a/Doc/library/cmath.rst b/Doc/library/cmath.rst index 2d804c97..682e6db 100644 --- a/Doc/library/cmath.rst +++ b/Doc/library/cmath.rst @@ -68,9 +68,9 @@ Definition:: .. function:: polar(x) - Convert a :class:`complex` from rectangular coordinates to polar + Convert a :class:`complex` from rectangular coordinates to polar coordinates. The function returns a tuple with the two elements - *r* and *phi*. *r* is the distance from 0 and *phi* the phase + *r* and *phi*. *r* is the distance from 0 and *phi* the phase angle. diff --git a/Doc/library/codeop.rst b/Doc/library/codeop.rst index 97b6267..e4523b6 100644 --- a/Doc/library/codeop.rst +++ b/Doc/library/codeop.rst @@ -43,7 +43,7 @@ To do just the former: other value will cause :exc:`ValueError` to be raised. .. warning:: - + It is possible (but not likely) that the parser stops parsing with a successful outcome before reaching the end of the source; in this case, trailing symbols may be ignored instead of causing an error. For example, diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst index b12bd7a..f41abd6 100644 --- a/Doc/library/collections.rst +++ b/Doc/library/collections.rst @@ -43,34 +43,34 @@ ABC Inherits Abstract Methods Mixin :class:`Iterator` :class:`Iterable` ``__next__`` ``__iter__`` :class:`Sized` ``__len__`` :class:`Callable` ``__call__`` - + :class:`Sequence` :class:`Sized`, ``__getitem__`` ``__contains__``. ``__iter__``, ``__reversed__``. :class:`Iterable`, and ``__len__`` ``index``, and ``count`` - :class:`Container` - + :class:`Container` + :class:`MutableSequence` :class:`Sequence` ``__getitem__`` Inherited Sequence methods and ``__delitem__``, ``append``, ``reverse``, ``extend``, ``pop``, ``insert``, ``remove``, and ``__iadd__`` and ``__len__`` - + :class:`Set` :class:`Sized`, ``__len__``, ``__le__``, ``__lt__``, ``__eq__``, ``__ne__``, :class:`Iterable`, ``__iter__``, and ``__gt__``, ``__ge__``, ``__and__``, ``__or__`` :class:`Container` ``__contains__`` ``__sub__``, ``__xor__``, and ``isdisjoint`` - + :class:`MutableSet` :class:`Set` ``add`` and Inherited Set methods and ``discard`` ``clear``, ``pop``, ``remove``, ``__ior__``, ``__iand__``, ``__ixor__``, and ``__isub__`` - + :class:`Mapping` :class:`Sized`, ``__getitem__``, ``__contains__``, ``keys``, ``items``, ``values``, :class:`Iterable`, ``__len__``. and ``get``, ``__eq__``, and ``__ne__`` :class:`Container` ``__iter__`` - + :class:`MutableMapping` :class:`Mapping` ``__getitem__`` Inherited Mapping methods and ``__setitem__``, ``pop``, ``popitem``, ``clear``, ``update``, ``__delitem__``, and ``setdefault`` ``__iter__``, and ``__len__`` - + :class:`MappingView` :class:`Sized` ``__len__`` :class:`KeysView` :class:`MappingView`, ``__contains__``, :class:`Set` ``__iter__`` @@ -526,8 +526,8 @@ Example: if kwds: raise ValueError('Got unexpected field names: %r' % kwds.keys()) return result - <BLANKLINE> - def __getnewargs__(self): + <BLANKLINE> + def __getnewargs__(self): return tuple(self) <BLANKLINE> x = property(itemgetter(0)) @@ -674,8 +674,8 @@ and more efficient to use a simple class declaration: :class:`UserDict` objects ------------------------- -The class, :class:`UserDict` acts as a wrapper around dictionary objects. -The need for this class has been partially supplanted by the ability to +The class, :class:`UserDict` acts as a wrapper around dictionary objects. +The need for this class has been partially supplanted by the ability to subclass directly from :class:`dict`; however, this class can be easier to work with because the underlying dictionary is accessible as an attribute. @@ -688,7 +688,7 @@ attribute. initialized with its contents; note that a reference to *initialdata* will not be kept, allowing it be used for other purposes. -In addition to supporting the methods and operations of mappings, +In addition to supporting the methods and operations of mappings, :class:`UserDict` instances provide the following attribute: .. attribute:: UserDict.data @@ -701,11 +701,11 @@ In addition to supporting the methods and operations of mappings, ------------------------- This class acts as a wrapper around list objects. It is a useful base class -for your own list-like classes which can inherit from them and override +for your own list-like classes which can inherit from them and override existing methods or add new ones. In this way, one can add new behaviors to lists. -The need for this class has been partially supplanted by the ability to +The need for this class has been partially supplanted by the ability to subclass directly from :class:`list`; however, this class can be easier to work with because the underlying list is accessible as an attribute. @@ -717,12 +717,12 @@ to work with because the underlying list is accessible as an attribute. defaulting to the empty list ``[]``. *list* can be any iterable, for example a real Python list or a :class:`UserList` object. -In addition to supporting the methods and operations of mutable sequences, +In addition to supporting the methods and operations of mutable sequences, :class:`UserList` instances provide the following attribute: .. attribute:: UserList.data - A real :class:`list` object used to store the contents of the + A real :class:`list` object used to store the contents of the :class:`UserList` class. **Subclassing requirements:** Subclasses of :class:`UserList` are expect to @@ -740,8 +740,8 @@ in that case. :class:`UserString` objects --------------------------- -The class, :class:`UserString` acts as a wrapper around string objects. -The need for this class has been partially supplanted by the ability to +The class, :class:`UserString` acts as a wrapper around string objects. +The need for this class has been partially supplanted by the ability to subclass directly from :class:`str`; however, this class can be easier to work with because the underlying string is accessible as an attribute. @@ -749,8 +749,8 @@ attribute. .. class:: UserString([sequence]) Class that simulates a string or a Unicode string object. The instance's - content is kept in a regular string object, which is accessible via the - :attr:`data` attribute of :class:`UserString` instances. The instance's + content is kept in a regular string object, which is accessible via the + :attr:`data` attribute of :class:`UserString` instances. The instance's contents are initially set to a copy of *sequence*. The *sequence* can be an instance of :class:`bytes`, :class:`str`, :class:`UserString` (or a subclass) or an arbitrary sequence which can be converted into a string using diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst index 75bfd92..445e65f 100644 --- a/Doc/library/configparser.rst +++ b/Doc/library/configparser.rst @@ -344,7 +344,7 @@ An example of writing to a configuration file:: import configparser config = configparser.RawConfigParser() - + # When adding sections or items, add them in the reverse order of # how you want them to be displayed in the actual file. # In addition, please note that using RawConfigParser's and the raw @@ -359,7 +359,7 @@ An example of writing to a configuration file:: config.set('Section1', 'baz', 'fun') config.set('Section1', 'bar', 'Python') config.set('Section1', 'foo', '%(bar)s is %(baz)s!') - + # Writing our configuration file to 'example.cfg' with open('example.cfg', 'wb') as configfile: config.write(configfile) @@ -399,7 +399,7 @@ To get interpolation, you will need to use a :class:`ConfigParser` or print(config.get('Section1', 'foo', 0, {'bar': 'Documentation', 'baz': 'evil'})) -Defaults are available in all three types of ConfigParsers. They are used in +Defaults are available in all three types of ConfigParsers. They are used in interpolation if an option used is not defined elsewhere. :: import configparser @@ -407,7 +407,7 @@ interpolation if an option used is not defined elsewhere. :: # New instance with 'bar' and 'baz' defaulting to 'Life' and 'hard' each config = configparser.SafeConfigParser({'bar': 'Life', 'baz': 'hard'}) config.read('example.cfg') - + print(config.get('Section1', 'foo')) # -> "Python is fun!" config.remove_option('Section1', 'bar') config.remove_option('Section1', 'baz') diff --git a/Doc/library/constants.rst b/Doc/library/constants.rst index 12b56f8..39d61cb 100644 --- a/Doc/library/constants.rst +++ b/Doc/library/constants.rst @@ -14,13 +14,13 @@ A small number of constants live in the built-in namespace. They are: .. data:: False - The false value of the :class:`bool` type. Assignments to ``False`` + The false value of the :class:`bool` type. Assignments to ``False`` are illegal and raise a :exc:`SyntaxError`. .. data:: True - The true value of the :class:`bool` type. Assignments to ``True`` + The true value of the :class:`bool` type. Assignments to ``True`` are illegal and raise a :exc:`SyntaxError`. diff --git a/Doc/library/crypt.rst b/Doc/library/crypt.rst index 7e0cb9c..b6c3d21 100644 --- a/Doc/library/crypt.rst +++ b/Doc/library/crypt.rst @@ -51,7 +51,7 @@ A simple example illustrating typical use:: username = input('Python login:') cryptedpasswd = pwd.getpwnam(username)[1] if cryptedpasswd: - if cryptedpasswd == 'x' or cryptedpasswd == '*': + if cryptedpasswd == 'x' or cryptedpasswd == '*': raise "Sorry, currently no support for shadow passwords" cleartext = getpass.getpass() return crypt.crypt(cleartext, cryptedpasswd) == cryptedpasswd diff --git a/Doc/library/csv.rst b/Doc/library/csv.rst index 7752ac7..8c4554a 100644 --- a/Doc/library/csv.rst +++ b/Doc/library/csv.rst @@ -82,7 +82,7 @@ The :mod:`csv` module defines the following functions: be split into lines in a manner which preserves the newline characters. A short usage example:: - + >>> import csv >>> spamReader = csv.reader(open('eggs.csv'), delimiter=' ', quotechar='|') >>> for row in spamReader: diff --git a/Doc/library/datetime.rst b/Doc/library/datetime.rst index 9401b38..c37ceb9 100644 --- a/Doc/library/datetime.rst +++ b/Doc/library/datetime.rst @@ -264,10 +264,10 @@ efficient pickling, and in Boolean contexts, a :class:`timedelta` object is considered to be true if and only if it isn't equal to ``timedelta(0)``. Example usage: - + >>> from datetime import timedelta >>> year = timedelta(days=365) - >>> another_year = timedelta(weeks=40, days=84, hours=23, + >>> another_year = timedelta(weeks=40, days=84, hours=23, ... minutes=50, seconds=600) # adds up to 365 days >>> year == another_year True @@ -515,10 +515,10 @@ Example of counting days to an event:: True >>> my_birthday = date(today.year, 6, 24) >>> if my_birthday < today: - ... my_birthday = my_birthday.replace(year=today.year + 1) + ... my_birthday = my_birthday.replace(year=today.year + 1) >>> my_birthday datetime.date(2008, 6, 24) - >>> time_to_birthday = abs(my_birthday - today) + >>> time_to_birthday = abs(my_birthday - today) >>> time_to_birthday.days 202 @@ -1012,7 +1012,7 @@ Examples of working with datetime objects: >>> tt = dt.timetuple() >>> for it in tt: # doctest: +SKIP ... print(it) - ... + ... 2006 # year 11 # month 21 # day @@ -1041,23 +1041,23 @@ Using datetime with tzinfo: ... def __init__(self): # DST starts last Sunday in March ... d = datetime(dt.year, 4, 1) # ends last Sunday in October ... self.dston = d - timedelta(days=d.weekday() + 1) - ... d = datetime(dt.year, 11, 1) + ... d = datetime(dt.year, 11, 1) ... self.dstoff = d - timedelta(days=d.weekday() + 1) ... def utcoffset(self, dt): ... return timedelta(hours=1) + self.dst(dt) - ... def dst(self, dt): + ... def dst(self, dt): ... if self.dston <= dt.replace(tzinfo=None) < self.dstoff: ... return timedelta(hours=1) ... else: ... return timedelta(0) ... def tzname(self,dt): ... return "GMT +1" - ... + ... >>> class GMT2(tzinfo): ... def __init__(self): - ... d = datetime(dt.year, 4, 1) + ... d = datetime(dt.year, 4, 1) ... self.dston = d - timedelta(days=d.weekday() + 1) - ... d = datetime(dt.year, 11, 1) + ... d = datetime(dt.year, 11, 1) ... self.dstoff = d - timedelta(days=d.weekday() + 1) ... def utcoffset(self, dt): ... return timedelta(hours=1) + self.dst(dt) @@ -1068,7 +1068,7 @@ Using datetime with tzinfo: ... return timedelta(0) ... def tzname(self,dt): ... return "GMT +2" - ... + ... >>> gmt1 = GMT1() >>> # Daylight Saving Time >>> dt1 = datetime(2006, 11, 21, 16, 30, tzinfo=gmt1) @@ -1089,7 +1089,7 @@ Using datetime with tzinfo: datetime.datetime(2006, 6, 14, 13, 0, tzinfo=<GMT1 object at 0x...>) >>> dt2.utctimetuple() == dt3.utctimetuple() True - + .. _datetime-time: @@ -1237,12 +1237,12 @@ Instance methods: return ``None`` or a string object. Example: - + >>> from datetime import time, tzinfo >>> class GMT1(tzinfo): ... def utcoffset(self, dt): - ... return timedelta(hours=1) - ... def dst(self, dt): + ... return timedelta(hours=1) + ... def dst(self, dt): ... return timedelta(0) ... def tzname(self,dt): ... return "Europe/Prague" @@ -1473,7 +1473,7 @@ Applications that can't bear such ambiguities should avoid using hybrid :class:`tzinfo` subclasses; there are no ambiguities when using UTC, or any other fixed-offset :class:`tzinfo` subclass (such as a class representing only EST (fixed offset -5 hours), or only EDT (fixed offset -4 hours)). - + .. _strftime-behavior: @@ -1516,7 +1516,7 @@ For an aware object: The full set of format codes supported varies across platforms, because Python calls the platform C library's :func:`strftime` function, and platform -variations are common. +variations are common. The following is a list of all the format codes that the C standard (1989 version) requires, and these work on all platforms with a standard C diff --git a/Doc/library/decimal.rst b/Doc/library/decimal.rst index 3d84f8c..350413f 100644 --- a/Doc/library/decimal.rst +++ b/Doc/library/decimal.rst @@ -323,7 +323,7 @@ Decimal objects infinity ::= 'Infinity' | 'Inf' nan ::= 'NaN' [digits] | 'sNaN' [digits] numeric-value ::= decimal-part [exponent-part] | infinity - numeric-string ::= [sign] numeric-value | [sign] nan + numeric-string ::= [sign] numeric-value | [sign] nan If *value* is a :class:`tuple`, it should have three components, a sign (:const:`0` for positive or :const:`1` for negative), a :class:`tuple` of @@ -875,7 +875,7 @@ In addition to the three supplied contexts, new contexts can be created with the * :const:`ROUND_HALF_EVEN` (to nearest with ties going to nearest even integer), * :const:`ROUND_HALF_UP` (to nearest with ties going away from zero), or * :const:`ROUND_UP` (away from zero). - * :const:`ROUND_05UP` (away from zero if last digit after rounding towards zero + * :const:`ROUND_05UP` (away from zero if last digit after rounding towards zero would have been 0 or 5; otherwise towards zero) The *traps* and *flags* fields list any signals to be set. Generally, new @@ -1355,7 +1355,7 @@ condition. sqrt(-x) and x > 0 0 ** 0 x ** (non-integer) - x ** Infinity + x ** Infinity .. class:: Overflow @@ -1458,7 +1458,7 @@ expanding the precision sufficiently to avoid loss of significance: Decimal('9.51111111') >>> u + (v + w) Decimal('9.51111111') - >>> + >>> >>> u, v, w = Decimal(20000), Decimal(-6), Decimal('6.0000003') >>> (u*v) + (u*w) Decimal('0.0060000') @@ -1597,7 +1597,7 @@ to work with the :class:`Decimal` class:: """ q = Decimal(10) ** -places # 2 places --> '0.01' - sign, digits, exp = value.quantize(q).as_tuple() + sign, digits, exp = value.quantize(q).as_tuple() result = [] digits = list(map(str, digits)) build, next = result.append, digits.pop @@ -1654,12 +1654,12 @@ to work with the :class:`Decimal` class:: getcontext().prec += 2 i, lasts, s, fact, num = 0, 0, 1, 1, 1 while s != lasts: - lasts = s + lasts = s i += 1 fact *= i - num *= x - s += num / fact - getcontext().prec -= 2 + num *= x + s += num / fact + getcontext().prec -= 2 return +s def cos(x): @@ -1676,13 +1676,13 @@ to work with the :class:`Decimal` class:: getcontext().prec += 2 i, lasts, s, fact, num, sign = 0, 0, 1, 1, 1, 1 while s != lasts: - lasts = s + lasts = s i += 2 fact *= i * (i-1) num *= x * x sign *= -1 - s += num / fact * sign - getcontext().prec -= 2 + s += num / fact * sign + getcontext().prec -= 2 return +s def sin(x): @@ -1699,13 +1699,13 @@ to work with the :class:`Decimal` class:: getcontext().prec += 2 i, lasts, s, fact, num, sign = 1, 0, x, 1, x, 1 while s != lasts: - lasts = s + lasts = s i += 2 fact *= i * (i-1) num *= x * x sign *= -1 - s += num / fact * sign - getcontext().prec -= 2 + s += num / fact * sign + getcontext().prec -= 2 return +s @@ -1739,7 +1739,7 @@ the :const:`Inexact` trap is set, it is also useful for validation: >>> Decimal('3.214').quantize(TWOPLACES) Decimal('3.21') - >>> # Validate that a number does not exceed two places + >>> # Validate that a number does not exceed two places >>> Decimal('3.21').quantize(TWOPLACES, context=Context(traps=[Inexact])) Decimal('3.21') diff --git a/Doc/library/dis.rst b/Doc/library/dis.rst index 39d37df..7dc8a3c 100644 --- a/Doc/library/dis.rst +++ b/Doc/library/dis.rst @@ -79,8 +79,8 @@ The :mod:`dis` module defines the following functions and constants: Detect all offsets in the code object *code* which are jump targets, and return a list of these offsets. - - + + .. data:: opname Sequence of operation names, indexable using the bytecode. @@ -502,7 +502,7 @@ the more significant byte last. The low byte of *counts* is the number of values before the list value, the high byte of *counts* the number of values after it. The resulting values are put onto the stack right-to-left. - + .. opcode:: DUP_TOPX (count) @@ -701,7 +701,7 @@ the more significant byte last. opcode finds the keyword parameters first. For each keyword argument, the value is on top of the key. Below the keyword parameters, the positional parameters are on the stack, with the right-most parameter on top. Below the parameters, - the function object to call is on the stack. Pops all function arguments, and + the function object to call is on the stack. Pops all function arguments, and the function itself off the stack, and pushes the return value. diff --git a/Doc/library/email.mime.rst b/Doc/library/email.mime.rst index b0d2adc..83f4228 100644 --- a/Doc/library/email.mime.rst +++ b/Doc/library/email.mime.rst @@ -2,7 +2,7 @@ ---------------------------------------------------------- .. module:: email.mime - :synopsis: Build MIME messages. + :synopsis: Build MIME messages. Ordinarily, you get a message object structure by passing a file or some text to diff --git a/Doc/library/fileinput.rst b/Doc/library/fileinput.rst index 8e70380..889fdff 100644 --- a/Doc/library/fileinput.rst +++ b/Doc/library/fileinput.rst @@ -145,7 +145,7 @@ it is deleted when the output file is closed. In-place filtering is disabled when standard input is read. .. warning:: - + The current implementation does not work for MS-DOS 8+3 filesystems. diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index 877d9b6..744a99f 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -95,7 +95,7 @@ are always available. They are listed here in alphabetical order. the range ``0 <= x < 256``. :class:`bytes` is an immutable version of :class:`bytearray` -- it has the same non-mutating methods and the same indexing and slicing behavior. - + Accordingly, constructor arguments are interpreted as for :func:`buffer`. Bytes objects can also be created with literals, see :ref:`strings`. @@ -271,7 +271,7 @@ are always available. They are listed here in alphabetical order. Take two (non complex) numbers as arguments and return a pair of numbers consisting of their quotient and remainder when using integer division. With mixed - operand types, the rules for binary arithmetic operators apply. For integers, + operand types, the rules for binary arithmetic operators apply. For integers, the result is the same as ``(a // b, a % b)``. For floating point numbers the result is ``(q, a % b)``, where *q* is usually ``math.floor(a / b)`` but may be 1 less than that. In any case ``q * b + a % b`` is very close to @@ -411,12 +411,12 @@ are always available. They are listed here in alphabetical order. .. index:: pair: str; format single: __format__ - + Convert a string or a number to a "formatted" representation, as controlled by *format_spec*. The interpretation of *format_spec* will depend on the type of the *value* argument, however there is a standard formatting syntax that is used by most built-in types: :ref:`formatspec`. - + .. note:: ``format(value, format_spec)`` merely calls ``value.__format__(format_spec)``. @@ -573,7 +573,7 @@ are always available. They are listed here in alphabetical order. returns ``['a', 'b', 'c']`` and ``list( (1, 2, 3) )`` returns ``[1, 2, 3]``. If no argument is given, returns a new empty list, ``[]``. - :class:`list` is a mutable sequence type, as documented in :ref:`typesseq`. + :class:`list` is a mutable sequence type, as documented in :ref:`typesseq`. .. function:: locals() @@ -654,7 +654,7 @@ are always available. They are listed here in alphabetical order. .. function:: open(file[, mode='r'[, buffering=None[, encoding=None[, errors=None[, newline=None[, closefd=True]]]]]]) Open a file. If the file cannot be opened, :exc:`IOError` is raised. - + *file* is either a string or bytes object giving the name (and the path if the file isn't in the current working directory) of the file to be opened or an integer file descriptor of the file to be wrapped. (If a file descriptor @@ -699,7 +699,7 @@ are always available. They are listed here in alphabetical order. *buffering* is an optional integer used to set the buffering policy. By default full buffering is on. Pass 0 to switch buffering off (only allowed in binary mode), 1 to set line buffering, and an integer > 1 for full buffering. - + *encoding* is the name of the encoding used to decode or encode the file. This should only be used in text mode. The default encoding is platform dependent, but any encoding supported by Python can be passed. See the @@ -991,7 +991,7 @@ are always available. They are listed here in alphabetical order. .. function:: str([object[, encoding[, errors]]]) Return a string version of an object, using one of the following modes: - + If *encoding* and/or *errors* are given, :func:`str` will decode the *object* which can either be a byte string or a character buffer using the codec for *encoding*. The *encoding* parameter is a string giving @@ -1002,7 +1002,7 @@ are always available. They are listed here in alphabetical order. errors, while a value of ``'ignore'`` causes errors to be silently ignored, and a value of ``'replace'`` causes the official Unicode replacement character, U+FFFD, to be used to replace input characters which cannot be decoded. - See also the :mod:`codecs` module. + See also the :mod:`codecs` module. When only *object* is given, this returns its nicely printable representation. For strings, this is the string itself. The difference with ``repr(object)`` @@ -1042,10 +1042,10 @@ are always available. They are listed here in alphabetical order. single inheritance, :func:`super` can be used to refer to parent classes without naming them explicitly, thus making the code more maintainable. This use closely parallels the use of "super" in other programming languages. - + The second use case is to support cooperative multiple inheritence in a - dynamic execution environment. This use case is unique to Python and is - not found in statically compiled languages or languages that only support + dynamic execution environment. This use case is unique to Python and is + not found in statically compiled languages or languages that only support single inheritance. This makes in possible to implement "diamond diagrams" where multiple base classes implement the same method. Good design dictates that this method have the same calling signature in every case (because the @@ -1080,7 +1080,7 @@ are always available. They are listed here in alphabetical order. 3])`` returns ``(1, 2, 3)``. If no argument is given, returns a new empty tuple, ``()``. - :class:`tuple` is an immutable sequence type, as documented in :ref:`typesseq`. + :class:`tuple` is an immutable sequence type, as documented in :ref:`typesseq`. .. function:: type(object) @@ -1110,7 +1110,7 @@ are always available. They are listed here in alphabetical order. >>> class X(object): ... a = 1 - ... + ... >>> X = type('X', (object,), dict(a=1)) @@ -1125,12 +1125,12 @@ are always available. They are listed here in alphabetical order. .. function:: zip(*iterables) - Make an iterator that aggregates elements from each of the iterables. + Make an iterator that aggregates elements from each of the iterables. Returns an iterator of tuples, where the *i*-th tuple contains the *i*-th element from each of the argument sequences or iterables. The iterator stops when the shortest input iterable is exhausted. With a single - iterable argument, it returns an iterator of 1-tuples. With no arguments, + iterable argument, it returns an iterator of 1-tuples. With no arguments, it returns an empty iterator. Equivalent to:: def zip(*iterables): @@ -1199,7 +1199,7 @@ are always available. They are listed here in alphabetical order. For example, the statement ``import spam`` results in bytecode resembling the following code:: - + spam = __import__('spam', globals(), locals(), [], -1) The statement ``import spam.ham`` results in this call:: diff --git a/Doc/library/gettext.rst b/Doc/library/gettext.rst index 458eec0..cd229e7 100644 --- a/Doc/library/gettext.rst +++ b/Doc/library/gettext.rst @@ -369,7 +369,7 @@ The following methods are overridden from the base class implementation: If the message id is not found in the catalog, and a fallback is specified, the request is forwarded to the fallback's :meth:`ngettext` method. Otherwise, when *n* is 1 *singular* is returned, and *plural* is returned in all other cases. - + Here is an example:: n = len(os.listdir('.')) diff --git a/Doc/library/heapq.rst b/Doc/library/heapq.rst index 5138c83..4a18e02 100644 --- a/Doc/library/heapq.rst +++ b/Doc/library/heapq.rst @@ -100,7 +100,7 @@ Using a heap to insert items at the correct place in a priority queue: H N - + The module also offers three general purpose functions based on heaps. diff --git a/Doc/library/idle.rst b/Doc/library/idle.rst index 65101fc..413750f 100644 --- a/Doc/library/idle.rst +++ b/Doc/library/idle.rst @@ -230,7 +230,7 @@ Python syntax colors: Keywords orange - Strings + Strings green Comments diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst index 3752bf1..253c303 100644 --- a/Doc/library/inspect.rst +++ b/Doc/library/inspect.rst @@ -384,7 +384,7 @@ Classes and functions .. function:: getargspec(func) - Get the names and default values of a function's arguments. A + Get the names and default values of a function's arguments. A :term:`named tuple` ``ArgSpec(args, varargs, keywords, defaults)`` is returned. *args* is a list of the argument names. *varargs* and *varkw* are the names of the ``*`` and @@ -416,7 +416,7 @@ Classes and functions .. function:: getargvalues(frame) - Get information about arguments passed into a particular frame. A :term:`named tuple` + Get information about arguments passed into a particular frame. A :term:`named tuple` ``ArgInfo(args, varargs, keywords, locals)`` is returned. *args* is a list of the argument names (it may contain nested lists). *varargs* and *varkw* are the names of the ``*`` and ``**`` arguments or ``None``. *locals* is the locals @@ -484,7 +484,7 @@ line. .. function:: getframeinfo(frame[, context]) - Get information about a frame or traceback object. A :term:`named tuple` + Get information about a frame or traceback object. A :term:`named tuple` ``Traceback(filename, lineno, function, code_context, index)`` is returned. diff --git a/Doc/library/io.rst b/Doc/library/io.rst index 14f7506..3b699cc 100644 --- a/Doc/library/io.rst +++ b/Doc/library/io.rst @@ -214,7 +214,7 @@ I/O Base Classes .. method:: close() Flush and close this stream. This method has no effect if the file is - already closed. Once the file is closed, any operation on the file + already closed. Once the file is closed, any operation on the file (e.g. reading or writing) will raise an :exc:`IOError`. The internal file descriptor isn't closed if *closefd* was False. @@ -628,7 +628,7 @@ Text I/O .. attribute:: line_buffering Whether line buffering is enabled. - + .. class:: StringIO([initial_value[, encoding[, errors[, newline]]]]) @@ -659,7 +659,7 @@ Text I/O # 'First line.\nSecond line.\n' contents = output.getvalue() - # Close object and discard memory buffer -- + # Close object and discard memory buffer -- # .getvalue() will now raise an exception. output.close() diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index 2b27647..96515111 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -74,7 +74,7 @@ loops that truncate the stream. .. function:: itertools.chain.from_iterable(iterable) - Alternate constructor for :func:`chain`. Gets chained inputs from a + Alternate constructor for :func:`chain`. Gets chained inputs from a single iterable argument that is evaluated lazily. Equivalent to:: @classmethod @@ -89,9 +89,9 @@ loops that truncate the stream. Return *r* length subsequences of elements from the input *iterable*. - Combinations are emitted in lexicographic sort order. So, if the + Combinations are emitted in lexicographic sort order. So, if the input *iterable* is sorted, the combination tuples will be produced - in sorted order. + in sorted order. Elements are treated as unique based on their position, not on their value. So if the input elements are unique, there will be no repeat @@ -306,12 +306,12 @@ loops that truncate the stream. Return successive *r* length permutations of elements in the *iterable*. If *r* is not specified or is ``None``, then *r* defaults to the length - of the *iterable* and all possible full-length permutations + of the *iterable* and all possible full-length permutations are generated. - Permutations are emitted in lexicographic sort order. So, if the + Permutations are emitted in lexicographic sort order. So, if the input *iterable* is sorted, the permutation tuples will be produced - in sorted order. + in sorted order. Elements are treated as unique based on their position, not on their value. So if the input elements are unique, there will be no repeat @@ -342,7 +342,7 @@ loops that truncate the stream. else: return - The code for :func:`permutations` can be also expressed as a subsequence of + The code for :func:`permutations` can be also expressed as a subsequence of :func:`product`, filtered to exclude entries with repeated elements (those from the same position in the input pool):: @@ -483,7 +483,7 @@ can be combined. >>> data = [ 1, 4,5,6, 10, 15,16,17,18, 22, 25,26,27,28] >>> for k, g in groupby(enumerate(data), lambda t:t[0]-t[1]): ... print(map(operator.itemgetter(1), g)) - ... + ... [1] [4, 5, 6] [10] @@ -610,7 +610,7 @@ which incur interpreter overhead. def unique_everseen(iterable, key=None): "List unique elements, preserving order. Remember all elements ever seen." # unique_everseen('AAAABBBCCDAABBB') --> A B C D - # unique_everseen('ABBCcAD', str.lower) --> A B C D + # unique_everseen('ABBCcAD', str.lower) --> A B C D seen = set() seen_add = seen.add if key is None: diff --git a/Doc/library/json.rst b/Doc/library/json.rst index cad841e..69d4c10 100644 --- a/Doc/library/json.rst +++ b/Doc/library/json.rst @@ -13,7 +13,7 @@ syntax (ECMA-262 3rd edition) used as a lightweight data interchange format. :mod:`marshal` and :mod:`pickle` modules. Encoding basic Python object hierarchies:: - + >>> import json >>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}]) '["foo", {"bar": ["baz", null, 1.0, 2]}]' @@ -42,12 +42,12 @@ Pretty printing:: >>> import json >>> print(json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4)) { - "4": 5, + "4": 5, "6": 7 } Decoding JSON:: - + >>> import json >>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]') ['foo', {'bar': ['baz', None, 1.0, 2]}] @@ -74,7 +74,7 @@ Specializing JSON object decoding:: Decimal('1.1') Extending :class:`JSONEncoder`:: - + >>> import json >>> class ComplexEncoder(json.JSONEncoder): ... def default(self, obj): @@ -88,12 +88,12 @@ Extending :class:`JSONEncoder`:: '[2.0, 1.0]' >>> list(ComplexEncoder().iterencode(2 + 1j)) ['[', '2.0', ', ', '1.0', ']'] - + .. highlight:: none Using json.tool from the shell to validate and pretty-print:: - + $ echo '{"json":"obj"}' | python -mjson.tool { "json": "obj" @@ -103,7 +103,7 @@ Using json.tool from the shell to validate and pretty-print:: .. highlight:: python -.. note:: +.. note:: The JSON produced by this module's default settings is a subset of YAML, so it may be used as a serializer for that as well. @@ -367,7 +367,7 @@ Encoders and decoders For example, to support arbitrary iterators, you could implement default like this:: - + def default(self, o): try: iterable = iter(o) @@ -391,6 +391,6 @@ Encoders and decoders Encode the given object, *o*, and yield each string representation as available. For example:: - + for chunk in JSONEncoder().iterencode(bigobject): mysocket.write(chunk) diff --git a/Doc/library/locale.rst b/Doc/library/locale.rst index 3dfa666..381107e 100644 --- a/Doc/library/locale.rst +++ b/Doc/library/locale.rst @@ -474,7 +474,7 @@ Example:: >>> import locale >>> loc = locale.getlocale() # get current locale >>> locale.setlocale(locale.LC_ALL, 'de_DE') # use German locale; name might vary with platform - >>> locale.strcoll('f\xe4n', 'foo') # compare a string containing an umlaut + >>> locale.strcoll('f\xe4n', 'foo') # compare a string containing an umlaut >>> locale.setlocale(locale.LC_ALL, '') # use user's preferred locale >>> locale.setlocale(locale.LC_ALL, 'C') # use default (C) locale >>> locale.setlocale(locale.LC_ALL, loc) # restore saved locale diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst index 9cea071..1532c90 100644 --- a/Doc/library/mailbox.rst +++ b/Doc/library/mailbox.rst @@ -1553,7 +1553,7 @@ due to malformed messages in the mailbox:: # that's better than losing a message completely. box.lock() box.add(message) - box.flush() + box.flush() box.unlock() # Remove original message diff --git a/Doc/library/math.rst b/Doc/library/math.rst index 1e9611e..f171ec1 100644 --- a/Doc/library/math.rst +++ b/Doc/library/math.rst @@ -98,7 +98,7 @@ Number-theoretic and representation functions .. function:: isnan(x) Checks if the float *x* is a NaN (not a number). NaNs are part of the - IEEE 754 standards. Operation like but not limited to ``inf * 0``, + IEEE 754 standards. Operation like but not limited to ``inf * 0``, ``inf / inf`` or any operation involving a NaN, e.g. ``nan * 1``, return a NaN. diff --git a/Doc/library/mmap.rst b/Doc/library/mmap.rst index 4828935..e85a964 100644 --- a/Doc/library/mmap.rst +++ b/Doc/library/mmap.rst @@ -87,7 +87,7 @@ To map anonymous memory, -1 should be passed as the fileno along with the length will be relative to the offset from the beginning of the file. *offset* defaults to 0. *offset* must be a multiple of the PAGESIZE or ALLOCATIONGRANULARITY. - + This example shows a simple way of using :class:`mmap`:: import mmap diff --git a/Doc/library/msvcrt.rst b/Doc/library/msvcrt.rst index 8a0452f..9be792d 100644 --- a/Doc/library/msvcrt.rst +++ b/Doc/library/msvcrt.rst @@ -18,7 +18,7 @@ documentation. The module implements both the normal and wide char variants of the console I/O api. The normal API deals only with ASCII characters and is of limited use -for internationalized applications. The wide char API should be used where +for internationalized applications. The wide char API should be used where ever possible .. _msvcrt-files: @@ -98,11 +98,11 @@ Console I/O return the keycode. The :kbd:`Control-C` keypress cannot be read with this function. - + .. function:: getwch() Wide char variant of :func:`getch`, returning a Unicode value. - + .. function:: getche() @@ -113,28 +113,28 @@ Console I/O .. function:: getwche() Wide char variant of :func:`getche`, returning a Unicode value. - + .. function:: putch(char) Print the character *char* to the console without buffering. - + .. function:: putwch(unicode_char) Wide char variant of :func:`putch`, accepting a Unicode value. - + .. function:: ungetch(char) Cause the character *char* to be "pushed back" into the console buffer; it will be the next character read by :func:`getch` or :func:`getche`. - + .. function:: ungetwch(unicode_char) Wide char variant of :func:`ungetch`, accepting a Unicode value. - + .. _msvcrt-other: diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst index c2581c6..7e44423 100644 --- a/Doc/library/multiprocessing.rst +++ b/Doc/library/multiprocessing.rst @@ -19,9 +19,9 @@ Windows. .. warning:: Some of this package's functionality requires a functioning shared semaphore - implementation on the host operating system. Without one, the - :mod:`multiprocessing.synchronize` module will be disabled, and attempts to - import it will result in an :exc:`ImportError`. See + implementation on the host operating system. Without one, the + :mod:`multiprocessing.synchronize` module will be disabled, and attempts to + import it will result in an :exc:`ImportError`. See :issue:`3770` for additional information. .. note:: @@ -36,7 +36,7 @@ Windows. >>> p = Pool(5) >>> def f(x): ... return x*x - ... + ... >>> p.map(f, [1,2,3]) Process PoolWorker-1: Process PoolWorker-2: @@ -75,11 +75,11 @@ To show the individual process IDs involved, here is an expanded example:: print 'module name:', __name__ print 'parent process:', os.getppid() print 'process id:', os.getpid() - + def f(name): info('function f') print 'hello', name - + if __name__ == '__main__': info('main line') p = Process(target=f, args=('bob',)) @@ -541,7 +541,7 @@ For an example of the usage of queues for interprocess communication see .. method:: put(item[, block[, timeout]]) - Put item into the queue. If the optional argument *block* is ``True`` + Put item into the queue. If the optional argument *block* is ``True`` (the default) and *timeout* is ``None`` (the default), block if necessary until a free slot is available. If *timeout* is a positive number, it blocks at most *timeout* seconds and raises the :exc:`queue.Full` exception if no @@ -856,7 +856,7 @@ object -- see :ref:`multiprocessing-managers`. acceptable. If *block* is ``True`` and *timeout* is not ``None`` then it specifies a timeout in seconds. If *block* is ``False`` then *timeout* is ignored. - + Note that on OS/X ``sem_timedwait`` is unsupported, so timeout arguments for these will be ignored. @@ -1133,22 +1133,22 @@ their parent process exits. The manager classes are defined in the server process which is using the given address and authentication key. .. method:: get_server() - + Returns a :class:`Server` object which represents the actual server under - the control of the Manager. The :class:`Server` object supports the + the control of the Manager. The :class:`Server` object supports the :meth:`serve_forever` method:: - + >>> from multiprocessing.managers import BaseManager >>> m = BaseManager(address=('', 50000), authkey='abc')) >>> server = m.get_server() >>> s.serve_forever() - + :class:`Server` additionally have an :attr:`address` attribute. .. method:: connect() - + Connect a local manager object to a remote manager process:: - + >>> from multiprocessing.managers import BaseManager >>> m = BaseManager(address='127.0.0.1', authkey='abc)) >>> m.connect() @@ -1358,7 +1358,7 @@ Another client can also use it:: >>> queue.get() 'hello' -Local processes can also access that queue, using the code from above on the +Local processes can also access that queue, using the code from above on the client to access it remotely:: >>> from multiprocessing import Process, Queue @@ -1369,12 +1369,12 @@ client to access it remotely:: ... super(Worker, self).__init__() ... def run(self): ... self.q.put('local hello') - ... + ... >>> queue = Queue() >>> w = Worker(queue) >>> w.start() >>> class QueueManager(BaseManager): pass - ... + ... >>> QueueManager.register('get_queue', callable=lambda: queue) >>> m = QueueManager(address=('', 50000), authkey='abracadabra') >>> s = m.get_server() @@ -2118,7 +2118,7 @@ Some simple benchmarks comparing :mod:`multiprocessing` with :mod:`threading`: .. literalinclude:: ../includes/mp_benchmarks.py An example/demo of how to use the :class:`managers.SyncManager`, :class:`Process` -and others to build a system which can distribute processes and work via a +and others to build a system which can distribute processes and work via a distributed queue to a "cluster" of machines on a network, accessible via SSH. You will need to have private key authentication for all hosts configured for this to work. diff --git a/Doc/library/nntplib.rst b/Doc/library/nntplib.rst index 761190d..d8d9b0d 100644 --- a/Doc/library/nntplib.rst +++ b/Doc/library/nntplib.rst @@ -24,16 +24,16 @@ about a newsgroup and print the subjects of the last 10 articles:: Group comp.lang.python has 59 articles, range 3742 to 3803 >>> resp, subs = s.xhdr('subject', first + '-' + last) >>> for id, sub in subs[-10:]: print(id, sub) - ... + ... 3792 Re: Removing elements from a list while iterating... 3793 Re: Who likes Info files? 3794 Emacs and doc strings 3795 a few questions about the Mac implementation 3796 Re: executable python scripts 3797 Re: executable python scripts - 3798 Re: a few questions about the Mac implementation + 3798 Re: a few questions about the Mac implementation 3799 Re: PROPOSAL: A Generic Python Object Interface for Python C Modules - 3802 Re: executable python scripts + 3802 Re: executable python scripts 3803 Re: \POSIX{} wait and SIGCHLD >>> s.quit() '205 news.cwi.nl closing connection. Goodbye.' diff --git a/Doc/library/operator.rst b/Doc/library/operator.rst index a67c6d8..d1d1c16 100644 --- a/Doc/library/operator.rst +++ b/Doc/library/operator.rst @@ -7,7 +7,7 @@ .. testsetup:: - + import operator from operator import itemgetter @@ -209,7 +209,7 @@ Operations which work with sequences include: Remove the value of *a* at index *b*. - + .. function:: getitem(a, b) __getitem__(a, b) @@ -337,7 +337,7 @@ objects. >>> class C: ... pass - ... + ... >>> import operator >>> obj = C() >>> operator.isMappingType(obj) @@ -427,9 +427,9 @@ expect a function argument. def g(obj): return tuple(obj[item] for item in items) return g - - The items can be any type accepted by the operand's :meth:`__getitem__` - method. Dictionaries accept any hashable value. Lists, tuples, and + + The items can be any type accepted by the operand's :meth:`__getitem__` + method. Dictionaries accept any hashable value. Lists, tuples, and strings accept an index or a slice: >>> itemgetter(1)('ABCDEFG') diff --git a/Doc/library/optparse.rst b/Doc/library/optparse.rst index 7989d33..3805d96 100644 --- a/Doc/library/optparse.rst +++ b/Doc/library/optparse.rst @@ -794,7 +794,7 @@ And to define an option with only a long option string:: The keyword arguments define attributes of the new Option object. The most important option attribute is :attr:`action`, and it largely determines which other attributes are relevant or required. If you pass irrelevant option -attributes, or fail to pass required ones, :mod:`optparse` raises an +attributes, or fail to pass required ones, :mod:`optparse` raises an :exc:`OptionError` exception explaining your mistake. An option's *action* determines what :mod:`optparse` does when it encounters diff --git a/Doc/library/os.rst b/Doc/library/os.rst index 1c69e25..ef5beaa 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -1226,7 +1226,7 @@ to be ignored. These functions all execute a new program, replacing the current process; they do not return. On Unix, the new executable is loaded into the current process, and will have the same process id as the caller. Errors will be reported as - :exc:`OSError` exceptions. + :exc:`OSError` exceptions. The current process is replaced immediately. Open file objects and descriptors are not flushed, so if there may be data buffered @@ -1258,7 +1258,7 @@ to be ignored. used to define the environment variables for the new process (these are used instead of the current process' environment); the functions :func:`execl`, :func:`execlp`, :func:`execv`, and :func:`execvp` all cause the new process to - inherit the environment of the current process. + inherit the environment of the current process. Availability: Unix, Windows. @@ -1456,7 +1456,7 @@ written in Python, such as a mail server's external command delivery program. (Note that the :mod:`subprocess` module provides more powerful facilities for spawning new processes and retrieving their results; using that module is - preferable to using these functions. Check specially the *Replacing Older + preferable to using these functions. Check specially the *Replacing Older Functions with the subprocess Module* section in that documentation page.) If *mode* is :const:`P_NOWAIT`, this function returns the process id of the new diff --git a/Doc/library/ossaudiodev.rst b/Doc/library/ossaudiodev.rst index e23b049..3ed3fb8 100644 --- a/Doc/library/ossaudiodev.rst +++ b/Doc/library/ossaudiodev.rst @@ -16,26 +16,26 @@ the standard audio interface for Linux and recent versions of FreeBSD. use ALSA, you'll have to make sure its OSS compatibility layer is active to use ossaudiodev, but you're gonna need it for the vast majority of Linux audio apps anyways. - + Sounds like things are also complicated for other BSDs. In response to my python-dev query, Thomas Wouters said: - + > Likewise, googling shows OpenBSD also uses OSS/Free -- the commercial > OSS installation manual tells you to remove references to OSS/Free from the > kernel :) - + but Aleksander Piotrowsk actually has an OpenBSD box, and he quotes from its <soundcard.h>: > * WARNING! WARNING! > * This is an OSS (Linux) audio emulator. > * Use the Native NetBSD API for developing new code, and this > * only for compiling Linux programs. - + There's also an ossaudio manpage on OpenBSD that explains things further. Presumably NetBSD and OpenBSD have a different standard audio interface. That's the great thing about standards, there are so many to choose from ... ;-) - + This probably all warrants a footnote or two, but I don't understand things well enough right now to write it! --GPW diff --git a/Doc/library/othergui.rst b/Doc/library/othergui.rst index d2fad3e..471076c 100644 --- a/Doc/library/othergui.rst +++ b/Doc/library/othergui.rst @@ -70,7 +70,7 @@ also available for Python: Robin Dunn. PyGTK, PyQt, and wxPython, all have a modern look and feel and more -widgets than Tkinter. In addition, there are many other GUI toolkits for +widgets than Tkinter. In addition, there are many other GUI toolkits for Python, both cross-platform, and platform-specific. See the `GUI Programming <http://wiki.python.org/moin/GuiProgramming>`_ page in the Python Wiki for a much more complete list, and also for links to documents where the diff --git a/Doc/library/pdb.rst b/Doc/library/pdb.rst index 2537983..c7b34ab 100644 --- a/Doc/library/pdb.rst +++ b/Doc/library/pdb.rst @@ -37,7 +37,7 @@ of the debugger is:: (Pdb) continue NameError: 'spam' > <string>(1)?() - (Pdb) + (Pdb) :file:`pdb.py` can also be invoked as a script to debug other scripts. For example:: @@ -65,7 +65,7 @@ Typical usage to inspect a crashed program is:: >>> pdb.pm() > ./mymodule.py(3)test2() -> print(spam) - (Pdb) + (Pdb) The module defines the following functions; each enters the debugger in a slightly different way: @@ -105,7 +105,7 @@ slightly different way: .. function:: post_mortem([traceback]) - Enter post-mortem debugging of the given *traceback* object. If no + Enter post-mortem debugging of the given *traceback* object. If no *traceback* is given, it uses the one of the exception that is currently being handled (an exception must be being handled if the default is to be used). diff --git a/Doc/library/pickle.rst b/Doc/library/pickle.rst index b54de90..f326843 100644 --- a/Doc/library/pickle.rst +++ b/Doc/library/pickle.rst @@ -478,7 +478,7 @@ As we shall see, pickle does not use directly the methods described above. In fact, these methods are part of the copy protocol which implements the :meth:`__reduce__` special method. The copy protocol provides a unified interface for retrieving the data necessary for pickling and copying -objects. [#]_ +objects. [#]_ Although powerful, implementing :meth:`__reduce__` directly in your classes is error prone. For this reason, class designers should use the high-level @@ -715,7 +715,7 @@ A sample usage of our unpickler working has intended:: .. XXX Add note about how extension codes could evade our protection - mechanism (e.g. cached classes do not invokes find_class()). + mechanism (e.g. cached classes do not invokes find_class()). As our examples shows, you have to be careful with what you allow to be unpickled. Therefore if security is a concern, you may want to consider diff --git a/Doc/library/profile.rst b/Doc/library/profile.rst index 1bf1501..132365a 100644 --- a/Doc/library/profile.rst +++ b/Doc/library/profile.rst @@ -51,15 +51,15 @@ examine the results of a profile operation. The Python standard library provides two different profilers: -#. :mod:`cProfile` is recommended for most users; it's a C extension +#. :mod:`cProfile` is recommended for most users; it's a C extension with reasonable overhead - that makes it suitable for profiling long-running programs. + that makes it suitable for profiling long-running programs. Based on :mod:`lsprof`, - contributed by Brett Rosen and Ted Czotter. + contributed by Brett Rosen and Ted Czotter. #. :mod:`profile`, a pure Python module whose interface is imitated by - :mod:`cProfile`. Adds significant overhead to profiled programs. - If you're trying to extend + :mod:`cProfile`. Adds significant overhead to profiled programs. + If you're trying to extend the profiler in some way, the task might be easier with this module. Copyright © 1994, by InfoSeek Corporation. @@ -260,24 +260,24 @@ reading the source code for these modules. that the text string in the far right column was used to sort the output. The column headings include: - ncalls + ncalls for the number of calls, - tottime + tottime for the total time spent in the given function (and excluding time made in calls to sub-functions), - percall + percall is the quotient of ``tottime`` divided by ``ncalls`` - cumtime + cumtime is the total time spent in this and all subfunctions (from invocation till exit). This figure is accurate *even* for recursive functions. - percall + percall is the quotient of ``cumtime`` divided by primitive calls - filename:lineno(function) + filename:lineno(function) provides the respective data of each function When there are two numbers in the first column (for example, ``43/3``), then the diff --git a/Doc/library/pyexpat.rst b/Doc/library/pyexpat.rst index e819bd4..6fe60ad 100644 --- a/Doc/library/pyexpat.rst +++ b/Doc/library/pyexpat.rst @@ -177,9 +177,9 @@ XMLParser Objects .. attribute:: xmlparser.buffer_size - The size of the buffer used when :attr:`buffer_text` is true. - A new buffer size can be set by assigning a new integer value - to this attribute. + The size of the buffer used when :attr:`buffer_text` is true. + A new buffer size can be set by assigning a new integer value + to this attribute. When the size is changed, the buffer will be flushed. diff --git a/Doc/library/queue.rst b/Doc/library/queue.rst index fa09fc5..e90f276 100644 --- a/Doc/library/queue.rst +++ b/Doc/library/queue.rst @@ -68,7 +68,7 @@ Queue Objects ------------- Queue objects (:class:`Queue`, :class:`LifoQueue`, or :class:`PriorityQueue`) -provide the public methods described below. +provide the public methods described below. .. method:: Queue.qsize() @@ -138,20 +138,20 @@ fully processed by daemon consumer threads. Example of how to wait for enqueued tasks to be completed:: - def worker(): - while True: - item = q.get() - do_work(item) - q.task_done() + def worker(): + while True: + item = q.get() + do_work(item) + q.task_done() - q = Queue() - for i in range(num_worker_threads): + q = Queue() + for i in range(num_worker_threads): t = Thread(target=worker) t.set_daemon(True) - t.start() + t.start() for item in source(): - q.put(item) + q.put(item) q.join() # block until all tasks are done diff --git a/Doc/library/re.rst b/Doc/library/re.rst index ce52185..f466614 100644 --- a/Doc/library/re.rst +++ b/Doc/library/re.rst @@ -221,7 +221,7 @@ The special characters are: ``'s'``, ``'u'``, ``'x'``.) The group matches the empty string; the letters set the corresponding flags: :const:`re.a` (ASCII-only matching), :const:`re.I` (ignore case), :const:`re.L` (locale dependent), - :const:`re.M` (multi-line), :const:`re.S` (dot matches all), + :const:`re.M` (multi-line), :const:`re.S` (dot matches all), and :const:`re.X` (verbose), for the entire regular expression. (The flags are described in :ref:`contents-of-module-re`.) This is useful if you wish to include the flags as part of the regular @@ -487,7 +487,7 @@ form. counterpart ``(?u)``), but these are redundant in Python 3.0 since matches are Unicode by default for strings (and Unicode matching isn't allowed for bytes). - + .. data:: I IGNORECASE @@ -1011,14 +1011,14 @@ method of :class:`MatchObject` in the following manner: >>> pair.match("717ak").group(1) '7' - + # Error because re.match() returns None, which doesn't have a group() method: >>> pair.match("718ak").group(1) Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> re.match(r".*(.).*\1", "718ak").group(1) AttributeError: 'NoneType' object has no attribute 'group' - + >>> pair.match("354aa").group(1) 'a' @@ -1127,7 +1127,7 @@ where the search is to start: Making a Phonebook ^^^^^^^^^^^^^^^^^^ -:func:`split` splits a string into a list delimited by the passed pattern. The +:func:`split` splits a string into a list delimited by the passed pattern. The method is invaluable for converting textual data into data structures that can be easily read and modified by Python as demonstrated in the following example that creates a phonebook. @@ -1136,7 +1136,7 @@ First, here is the input. Normally it may come from a file, here we are using triple-quoted string syntax: >>> input = """Ross McFluff: 834.345.1254 155 Elm Street - ... + ... ... Ronald Heathmore: 892.345.3428 436 Finley Avenue ... Frank Burger: 925.541.7625 662 South Dogwood Way ... diff --git a/Doc/library/rlcompleter.rst b/Doc/library/rlcompleter.rst index b09df54..293160a 100644 --- a/Doc/library/rlcompleter.rst +++ b/Doc/library/rlcompleter.rst @@ -61,6 +61,6 @@ Completer objects have the following method: If called for a dotted name, it will try to evaluate anything without obvious side-effects (functions will not be evaluated, but it can generate calls to :meth:`__getattr__`) up to the last part, and find matches for the rest via the - :func:`dir` function. Any exception raised during the evaluation of the + :func:`dir` function. Any exception raised during the evaluation of the expression is caught, silenced and :const:`None` is returned. diff --git a/Doc/library/sched.rst b/Doc/library/sched.rst index e0007fc..cab7f60 100644 --- a/Doc/library/sched.rst +++ b/Doc/library/sched.rst @@ -42,7 +42,7 @@ Example:: 930343700.276 In multi-threaded environments, the :class:`scheduler` class has limitations -with respect to thread-safety, inability to insert a new task before +with respect to thread-safety, inability to insert a new task before the one currently pending in a running scheduler, and holding up the main thread until the event queue is empty. Instead, the preferred approach is to use the :class:`threading.Timer` class instead. diff --git a/Doc/library/shutil.rst b/Doc/library/shutil.rst index b332d9a..7cf8550 100644 --- a/Doc/library/shutil.rst +++ b/Doc/library/shutil.rst @@ -20,7 +20,7 @@ copying and removal. For operations on individual files, see also the Even the higher-level file copying functions (:func:`copy`, :func:`copy2`) can't copy all file metadata. - + On POSIX platforms, this means that file owner and group are lost as well as ACLs. On Mac OS, the resource fork and other metadata are not used. This means that resources will be lost and file type and creator codes will diff --git a/Doc/library/signal.rst b/Doc/library/signal.rst index 5033e0e..2db17c5 100644 --- a/Doc/library/signal.rst +++ b/Doc/library/signal.rst @@ -39,12 +39,12 @@ rules for working with signals and their handlers: * Some care must be taken if both signals and threads are used in the same program. The fundamental thing to remember in using signals and threads simultaneously is: always perform :func:`signal` operations in the main thread - of execution. Any thread can perform an :func:`alarm`, :func:`getsignal`, - :func:`pause`, :func:`setitimer` or :func:`getitimer`; only the main thread - can set a new signal handler, and the main thread will be the only one to - receive signals (this is enforced by the Python :mod:`signal` module, even - if the underlying thread implementation supports sending signals to - individual threads). This means that signals can't be used as a means of + of execution. Any thread can perform an :func:`alarm`, :func:`getsignal`, + :func:`pause`, :func:`setitimer` or :func:`getitimer`; only the main thread + can set a new signal handler, and the main thread will be the only one to + receive signals (this is enforced by the Python :mod:`signal` module, even + if the underlying thread implementation supports sending signals to + individual threads). This means that signals can't be used as a means of inter-thread communication. Use locks instead. The variables defined in the :mod:`signal` module are: @@ -80,22 +80,22 @@ The variables defined in the :mod:`signal` module are: One more than the number of the highest signal number. -.. data:: ITIMER_REAL +.. data:: ITIMER_REAL Decrements interval timer in real time, and delivers :const:`SIGALRM` upon expiration. -.. data:: ITIMER_VIRTUAL +.. data:: ITIMER_VIRTUAL - Decrements interval timer only when the process is executing, and delivers + Decrements interval timer only when the process is executing, and delivers SIGVTALRM upon expiration. .. data:: ITIMER_PROF - - Decrements interval timer both when the process executes and when the - system is executing on behalf of the process. Coupled with ITIMER_VIRTUAL, - this timer is usually used to profile the time spent by the application + + Decrements interval timer both when the process executes and when the + system is executing on behalf of the process. Coupled with ITIMER_VIRTUAL, + this timer is usually used to profile the time spent by the application in user and kernel space. SIGPROF is delivered upon expiration. @@ -105,7 +105,7 @@ The :mod:`signal` module defines one exception: Raised to signal an error from the underlying :func:`setitimer` or :func:`getitimer` implementation. Expect this error if an invalid - interval timer or a negative time is passed to :func:`setitimer`. + interval timer or a negative time is passed to :func:`setitimer`. This error is a subtype of :exc:`IOError`. @@ -143,21 +143,21 @@ The :mod:`signal` module defines the following functions: .. function:: setitimer(which, seconds[, interval]) - Sets given interval timer (one of :const:`signal.ITIMER_REAL`, + Sets given interval timer (one of :const:`signal.ITIMER_REAL`, :const:`signal.ITIMER_VIRTUAL` or :const:`signal.ITIMER_PROF`) specified - by *which* to fire after *seconds* (float is accepted, different from + by *which* to fire after *seconds* (float is accepted, different from :func:`alarm`) and after that every *interval* seconds. The interval timer specified by *which* can be cleared by setting seconds to zero. When an interval timer fires, a signal is sent to the process. - The signal sent is dependent on the timer being used; - :const:`signal.ITIMER_REAL` will deliver :const:`SIGALRM`, + The signal sent is dependent on the timer being used; + :const:`signal.ITIMER_REAL` will deliver :const:`SIGALRM`, :const:`signal.ITIMER_VIRTUAL` sends :const:`SIGVTALRM`, and :const:`signal.ITIMER_PROF` will deliver :const:`SIGPROF`. The old values are returned as a tuple: (delay, interval). - Attempting to pass an invalid interval timer will cause a + Attempting to pass an invalid interval timer will cause a :exc:`ItimerError`. @@ -186,7 +186,7 @@ The :mod:`signal` module defines the following functions: will be restarted when interrupted by signal *signalnum*, otherwise system calls will be interrupted. Returns nothing. Availability: Unix (see the man page :manpage:`siginterrupt(3)` for further information). - + Note that installing a signal handler with :func:`signal` will reset the restart behaviour to interruptible by implicitly calling :cfunc:`siginterrupt` with a true *flag* value for the given signal. @@ -233,7 +233,7 @@ be sent, and the handler raises an exception. :: signal.alarm(5) # This open() may hang indefinitely - fd = os.open('/dev/ttyS0', os.O_RDWR) + fd = os.open('/dev/ttyS0', os.O_RDWR) signal.alarm(0) # Disable the alarm diff --git a/Doc/library/smtplib.rst b/Doc/library/smtplib.rst index 74be645..21065b2 100644 --- a/Doc/library/smtplib.rst +++ b/Doc/library/smtplib.rst @@ -182,9 +182,9 @@ An :class:`SMTP` instance has the following methods: Identify yourself to an ESMTP server using ``EHLO``. The hostname argument defaults to the fully qualified domain name of the local host. Examine the - response for ESMTP option and store them for use by :meth:`has_extn`. - Also sets several informational attributes: the message returned by - the server is stored as the :attr:`ehlo_resp` attribute, :attr:`does_esmtp` + response for ESMTP option and store them for use by :meth:`has_extn`. + Also sets several informational attributes: the message returned by + the server is stored as the :attr:`ehlo_resp` attribute, :attr:`does_esmtp` is set to true or false depending on whether the server supports ESMTP, and :attr:`esmtp_features` will be a dictionary containing the names of the SMTP service extensions this server supports, and their diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst index 536b3c5..c2e3d91 100644 --- a/Doc/library/socket.rst +++ b/Doc/library/socket.rst @@ -178,10 +178,10 @@ The module :mod:`socket` exports the following constants and functions: .. data:: SIO_* RCVALL_* - + Constants for Windows' WSAIoctl(). The constants are used as arguments to the :meth:`ioctl` method of socket objects. - + .. data:: TIPC_* @@ -210,7 +210,7 @@ The module :mod:`socket` exports the following constants and functions: all the necessary arguments for creating the corresponding socket. *host* is a domain name, a string representation of an IPv4/v6 address or ``None``. *port* is a string service name such as ``'http'``, a numeric port number or ``None``. - The rest of the arguments are optional and must be numeric if specified. + The rest of the arguments are optional and must be numeric if specified. By passing ``None`` as the value of *host* and *port*, , you can pass ``NULL`` to the C API. The :func:`getaddrinfo` function returns a list of 5-tuples with the following @@ -544,14 +544,14 @@ correspond to Unix system calls applicable to sockets. contents of the buffer (see the optional built-in module :mod:`struct` for a way to decode C structures encoded as byte strings). - + .. method:: socket.ioctl(control, option) - :platform: Windows - + :platform: Windows + The :meth:`ioctl` method is a limited interface to the WSAIoctl system interface. Please refer to the MSDN documentation for more information. - + .. method:: socket.listen(backlog) @@ -851,7 +851,7 @@ sends traffic to the first one connected successfully. :: s.close() print('Received', repr(data)) - + The last example shows how to write a very simple network sniffer with raw sockets on Windows. The example requires administrator privileges to modify the interface:: @@ -860,19 +860,19 @@ the interface:: # the public network interface HOST = socket.gethostbyname(socket.gethostname()) - + # create a raw socket and bind it to the public interface s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_IP) s.bind((HOST, 0)) - + # Include IP headers s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1) - + # receive all packages s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON) - + # receive a package print(s.recvfrom(65565)) - + # disabled promiscuous mode s.ioctl(socket.SIO_RCVALL, socket.RCVALL_OFF) diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst index 2dd29c1..c7c553f 100644 --- a/Doc/library/sqlite3.rst +++ b/Doc/library/sqlite3.rst @@ -541,8 +541,8 @@ Cursor Objects This read-only attribute provides the column names of the last query. To remain compatible with the Python DB API, it returns a 7-tuple for each - column where the last six items of each tuple are :const:`None`. - + column where the last six items of each tuple are :const:`None`. + It is set for ``SELECT`` statements without any matching rows as well. .. _sqlite3-row-objects: @@ -553,7 +553,7 @@ Row Objects .. class:: Row A :class:`Row` instance serves as a highly optimized - :attr:`~Connection.row_factory` for :class:`Connection` objects. + :attr:`~Connection.row_factory` for :class:`Connection` objects. It tries to mimic a tuple in most of its features. It supports mapping access by column name and index, iteration, @@ -561,7 +561,7 @@ Row Objects If two :class:`Row` objects have exactly the same columns and their members are equal, they compare equal. - + .. versionchanged:: 2.6 Added iteration and equality (hashability). @@ -780,7 +780,7 @@ Controlling Transactions ------------------------ By default, the :mod:`sqlite3` module opens transactions implicitly before a -Data Modification Language (DML) statement (i.e. +Data Modification Language (DML) statement (i.e. ``INSERT``/``UPDATE``/``DELETE``/``REPLACE``), and commits transactions implicitly before a non-DML, non-query statement (i. e. anything other than ``SELECT`` or the aforementioned). diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst index 8e1c6b0..10c33f9 100644 --- a/Doc/library/ssl.rst +++ b/Doc/library/ssl.rst @@ -45,7 +45,7 @@ Functions, Constants, and Exceptions .. exception:: SSLError - Raised to signal an error from the underlying SSL implementation. This + Raised to signal an error from the underlying SSL implementation. This signifies some problem in the higher-level encryption and authentication layer that's superimposed on the underlying network connection. This error is a subtype of :exc:`socket.error`, which @@ -170,7 +170,7 @@ Functions, Constants, and Exceptions >>> import time >>> time.ctime(ssl.cert_time_to_seconds("May 9 00:00:00 2007 GMT")) 'Wed May 9 00:00:00 2007' - >>> + >>> .. function:: get_server_certificate (addr, ssl_version=PROTOCOL_SSLv3, ca_certs=None) @@ -397,7 +397,7 @@ should start with the specific certificate for the principal who "is" the client or server, and then the certificate for the issuer of that certificate, and then the certificate for the issuer of *that* certificate, and so on up the chain till you get to a certificate which is *self-signed*, -that is, a certificate which has the same subject and issuer, +that is, a certificate which has the same subject and issuer, sometimes called a *root certificate*. The certificates should just be concatenated together in the certificate file. For example, suppose we had a three certificate chain, from our server certificate to the @@ -433,13 +433,13 @@ SSL3 or TLS1, you don't need to put the full chain in your "CA certs" file; you only need the root certificates, and the remote peer is supposed to furnish the other certificates necessary to chain from its certificate to a root certificate. -See :rfc:`4158` for more discussion of the way in which +See :rfc:`4158` for more discussion of the way in which certification chains can be built. If you are going to create a server that provides SSL-encrypted connection services, you will need to acquire a certificate for that service. There are many ways of acquiring appropriate certificates, -such as buying one from a certification authority. Another common +such as buying one from a certification authority. Another common practice is to generate a self-signed certificate. The simplest way to do this is with the OpenSSL package, using something like the following:: @@ -581,7 +581,7 @@ Then you'd read data from the ``connstream`` and do something with it till you a And go back to listening for new client connections. - + .. seealso:: Class :class:`socket.socket` diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index e8d8ba6..fb3a50d 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -172,7 +172,7 @@ notion of comparison where any two objects of that type are unequal. The ``<``, any operand is a complex number, the objects are of different types that cannot be compared, or other cases where there is no defined ordering. -.. index:: +.. index:: single: __eq__() (instance method) single: __ne__() (instance method) single: __lt__() (instance method) @@ -330,14 +330,14 @@ Notes: for well-defined conversions. (4) - float also accepts the strings "nan" and "inf" with an optional prefix "+" + float also accepts the strings "nan" and "inf" with an optional prefix "+" or "-" for Not a Number (NaN) and positive or negative infinity. (5) Python defines ``pow(0, 0)`` and ``0 ** 0`` to be ``1``, as is common for programming languages. - + All :class:`numbers.Real` types (:class:`int` and :class:`float`) also include the following operations: @@ -460,7 +460,7 @@ The float type has some additional methods. original float and with a positive denominator. Raises :exc:`OverflowError` on infinities and a :exc:`ValueError` on NaNs. - + .. versionadded:: 2.6 Two methods support conversion to @@ -875,7 +875,7 @@ functions based on regular expressions. otherwise. Decimal characters include digit characters, and all characters that that can be used to form decimal-radix numbers, e.g. U+0660, ARABIC-INDIC DIGIT ZERO. - + .. method:: str.isdigit() @@ -903,7 +903,7 @@ functions based on regular expressions. that have the Unicode numeric value property, e.g. U+2155, VULGAR FRACTION ONE FIFTH. - + .. method:: str.isprintable() Return true if all characters in the string are printable or the string is @@ -1474,7 +1474,7 @@ Notes: example, sort by department, then by salary grade). While a list is being sorted, the effect of attempting to mutate, or even - inspect, the list is undefined. The C implementation + inspect, the list is undefined. The C implementation makes the list appear empty for the duration, and raises :exc:`ValueError` if it can detect that the list has been mutated during a sort. @@ -1525,7 +1525,7 @@ The bytes and bytearray types have an additional class method: b'\xf0\xf1\xf2' The translate method differs in semantics from the version available on strings: - + .. method:: bytes.translate(table[, delete]) Return a copy of the bytes or bytearray object where all bytes occurring in @@ -1807,7 +1807,7 @@ pairs within braces, for example: ``{'jack': 4098, 'sjoerd': 4127}`` or ``{4098: Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is not in the map. - + If a subclass of dict defines a method :meth:`__missing__`, if the key *key* is not present, the ``d[key]`` operation calls that method with the key *key* as argument. The ``d[key]`` operation then returns or raises whatever is @@ -2149,7 +2149,7 @@ Files have the following methods: positioning); other values are ``os.SEEK_CUR`` or ``1`` (seek relative to the current position) and ``os.SEEK_END`` or ``2`` (seek relative to the file's end). There is no return value. - + For example, ``f.seek(2, os.SEEK_CUR)`` advances the position by two and ``f.seek(-3, os.SEEK_END)`` sets the position to the third to last. diff --git a/Doc/library/string.rst b/Doc/library/string.rst index 37704b0..98c7051 100644 --- a/Doc/library/string.rst +++ b/Doc/library/string.rst @@ -98,7 +98,7 @@ implementation as the built-in :meth:`format` method. :meth:`format` is just a wrapper that calls :meth:`vformat`. .. method:: vformat(format_string, args, kwargs) - + This function does the actual work of formatting. It is exposed as a separate function for cases where you want to pass in a predefined dictionary of arguments, rather than unpacking and repacking the @@ -111,12 +111,12 @@ implementation as the built-in :meth:`format` method. intended to be replaced by subclasses: .. method:: parse(format_string) - + Loop over the format_string and return an iterable of tuples (*literal_text*, *field_name*, *format_spec*, *conversion*). This is used by :meth:`vformat` to break the string in to either literal text, or replacement fields. - + The values in the tuple conceptually represent a span of literal text followed by a single replacement field. If there is no literal text (which can happen if two replacement fields occur consecutively), then @@ -134,7 +134,7 @@ implementation as the built-in :meth:`format` method. *key* parameter to :meth:`get_value`. .. method:: get_value(key, args, kwargs) - + Retrieve a given field value. The *key* argument will be either an integer or a string. If it is an integer, it represents the index of the positional argument in *args*; if it is a string, then it represents a @@ -172,7 +172,7 @@ implementation as the built-in :meth:`format` method. method is provided so that subclasses can override it. .. method:: convert_field(value, conversion) - + Converts the value (returned by :meth:`get_field`) given a conversion type (as in the tuple returned by the :meth:`parse` method.) The default version understands 'r' (repr) and 's' (str) conversion types. @@ -201,7 +201,7 @@ The grammar for a replacement field is as follows: element_index: `integer` conversion: "r" | "s" | "a" format_spec: <described in the next section> - + In less formal terms, the replacement field starts with a *field_name*, which can either be a number (for a positional argument), or an identifier (for keyword arguments). Following this is an optional *conversion* field, which is @@ -221,7 +221,7 @@ Some simple format string examples:: "My quest is {name}" # References keyword argument 'name' "Weight in tons {0.weight}" # 'weight' attribute of first positional arg "Units destroyed: {players[0]}" # First element of keyword argument 'players'. - + The *conversion* field causes a type coercion before formatting. Normally, the job of formatting a value is done by the :meth:`__format__` method of the value itself. However, in some cases it is desirable to force a type to be formatted @@ -265,11 +265,11 @@ effectively:: Then the outer replacement field would be evaluated, producing:: "noses " - + Which is substituted into the string, yielding:: - + "A man with two noses " - + (The extra space is because we specified a field width of 10, and because left alignment is the default for strings.) @@ -301,7 +301,7 @@ The general form of a *standard format specifier* is: width: `integer` precision: `integer` type: "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "x" | "X" | "%" - + The *fill* character can be any character other than '}' (which signifies the end of the field). The presence of a fill character is signaled by the *next* character, which must be one of the alignment options. If the second character @@ -394,9 +394,9 @@ The available integer presentation types are: +---------+----------------------------------------------------------+ | None | The same as ``'d'``. | +---------+----------------------------------------------------------+ - + The available presentation types for floating point and decimal values are: - + +---------+----------------------------------------------------------+ | Type | Meaning | +=========+==========================================================+ diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index 57b83d3..da3d007 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -126,7 +126,7 @@ This module defines one class called :class:`Popen`: Special value that can be used as the *stderr* argument to :class:`Popen` and indicates that standard error should go into the same handle as standard output. - + Convenience Functions ^^^^^^^^^^^^^^^^^^^^^ @@ -346,7 +346,7 @@ The following attributes are also available: The child return code, set by :meth:`poll` and :meth:`wait` (and indirectly by :meth:`communicate`). A ``None`` value indicates that the process hasn't terminated yet. - + A negative value ``-N`` indicates that the child was terminated by signal ``N`` (Unix only). diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst index e5d1781..8596bd0 100644 --- a/Doc/library/sys.rst +++ b/Doc/library/sys.rst @@ -327,7 +327,7 @@ always available. The *default* argument allows to define a value which will be returned if the object type does not provide means to retrieve the size and would - cause a `TypeError`. + cause a `TypeError`. func:`getsizeof` calls the object's __sizeof__ method and adds an additional garbage collector overhead if the object is managed by the garbage collector. @@ -642,7 +642,7 @@ always available. The events have the following meaning: - ``'call'`` + ``'call'`` A function is called (or some other code block entered). The global trace function is called; *arg* is ``None``; the return value specifies the local trace function. @@ -704,7 +704,7 @@ always available. prompts of :func:`input`. The interpreter's own prompts and (almost all of) its error messages go to ``stderr``. ``stdout`` and ``stderr`` needn't be built-in file objects: any object is acceptable as long - as it has a :meth:`write` method that takes a string argument. (Changing these + as it has a :meth:`write` method that takes a string argument. (Changing these objects doesn't affect the standard I/O streams of processes executed by :func:`os.popen`, :func:`os.system` or the :func:`exec\*` family of functions in the :mod:`os` module.) diff --git a/Doc/library/tk.rst b/Doc/library/tk.rst index 959cdf4..da84791 100644 --- a/Doc/library/tk.rst +++ b/Doc/library/tk.rst @@ -12,7 +12,7 @@ Graphical User Interfaces with Tk Tk/Tcl has long been an integral part of Python. It provides a robust and platform independent windowing toolkit, that is available to Python programmers -using the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` +using the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` module. The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To @@ -23,15 +23,15 @@ classes. In addition, the internal module :mod:`_tkinter` provides a threadsafe mechanism which allows Python and Tcl to interact. :mod:`tkinter`'s chief virtues are that it is fast, and that it usually comes -bundled with Python. Although its standard documentation is weak, good -material is available, which includes: references, tutorials, a book and -others. :mod:`tkinter` is also famous for having an outdated look and feel, -which has been vastly improved in Tk 8.5. Nevertheless, there are many other -GUI libraries that you could be interested in. For more information about +bundled with Python. Although its standard documentation is weak, good +material is available, which includes: references, tutorials, a book and +others. :mod:`tkinter` is also famous for having an outdated look and feel, +which has been vastly improved in Tk 8.5. Nevertheless, there are many other +GUI libraries that you could be interested in. For more information about alternatives, see the :ref:`other-gui-packages` section. .. toctree:: - + tkinter.rst tkinter.tix.rst tkinter.scrolledtext.rst diff --git a/Doc/library/tkinter.rst b/Doc/library/tkinter.rst index b40affa..55cc668 100644 --- a/Doc/library/tkinter.rst +++ b/Doc/library/tkinter.rst @@ -41,7 +41,7 @@ It is usually a shared library (or DLL), but might in some cases be statically linked with the Python interpreter. In addition to the Tk interface module, :mod:`tkinter` includes a number of -Python modules, :mod:`tkinter.constants` being one of the most important. +Python modules, :mod:`tkinter.constants` being one of the most important. Importing :mod:`tkinter` will automatically import :mod:`tkinter.constants`, so, usually, to use Tkinter all you need is a simple import statement:: @@ -96,7 +96,7 @@ Other modules that provide Tk support include: Basic dialogs and convenience functions. :mod:`tkinter.dnd` - Drag-and-drop support for :mod:`tkinter`. This is experimental and should + Drag-and-drop support for :mod:`tkinter`. This is experimental and should become deprecated when it is replaced with the Tk DND. :mod:`turtle` @@ -156,7 +156,7 @@ documentation that exists. Here are some hints: the novice. The book is not exhaustive, and for many details it defers to the man pages. -* :file:`tkinter/__init__.py` is a last resort for most, but can be a good +* :file:`tkinter/__init__.py` is a last resort for most, but can be a good place to go when nothing else makes sense. @@ -271,7 +271,7 @@ perform some *action*. In C, you'd express this as someAction(fred, someOptions), in C++, you would express this as fred.someAction(someOptions), and in Tk, you say:: - .fred someAction someOptions + .fred someAction someOptions Note that the object name, ``.fred``, starts with a dot. @@ -320,7 +320,7 @@ To give a widget to the packer (geometry manager), you call pack with optional arguments. In Tkinter, the Pack class holds all this functionality, and the various forms of the pack command are implemented as methods. All widgets in :mod:`tkinter` are subclassed from the Packer, and so inherit all the packing -methods. See the :mod:`tkinter.tix` module documentation for additional +methods. See the :mod:`tkinter.tix` module documentation for additional information on the Form geometry manager. :: pack .fred -side left =====> fred.pack(side = "left") @@ -477,7 +477,7 @@ Packer Options For more extensive information on the packer and the options that it can take, see the man pages and page 183 of John Ousterhout's book. -anchor +anchor Anchor type. Denotes where the packer is to place each slave in its parcel. expand @@ -707,7 +707,7 @@ event. The following table lists the other event fields you can access, and how they are denoted in Tk, which can be useful when referring to the Tk man pages. :: - Tk Tkinter Event Field Tk Tkinter Event Field + Tk Tkinter Event Field Tk Tkinter Event Field -- ------------------- -- ------------------- %f focus %A char %h height %E send_event diff --git a/Doc/library/tkinter.tix.rst b/Doc/library/tkinter.tix.rst index b555376..7cd343c 100644 --- a/Doc/library/tkinter.tix.rst +++ b/Doc/library/tkinter.tix.rst @@ -8,12 +8,12 @@ .. index:: single: Tix -The :mod:`tkinter.tix` (Tk Interface Extension) module provides an additional -rich set of widgets. Although the standard Tk library has many useful widgets, +The :mod:`tkinter.tix` (Tk Interface Extension) module provides an additional +rich set of widgets. Although the standard Tk library has many useful widgets, they are far from complete. The :mod:`tkinter.tix` library provides most of the -commonly needed widgets that are missing from standard Tk: :class:`HList`, -:class:`ComboBox`, :class:`Control` (a.k.a. SpinBox) and an assortment of -scrollable widgets. +commonly needed widgets that are missing from standard Tk: :class:`HList`, +:class:`ComboBox`, :class:`Control` (a.k.a. SpinBox) and an assortment of +scrollable widgets. :mod:`tkinter.tix` also includes many more widgets that are generally useful in a wide range of applications: :class:`NoteBook`, :class:`FileEntry`, :class:`PanedWindow`, etc; there are more than 40 of them. @@ -50,10 +50,10 @@ Using Tix Toplevel widget of Tix which represents mostly the main window of an application. It has an associated Tcl interpreter. - Classes in the :mod:`tkinter.tix` module subclasses the classes in the - :mod:`tkinter`. The former imports the latter, so to use :mod:`tkinter.tix` - with Tkinter, all you need to do is to import one module. In general, you - can just import :mod:`tkinter.tix`, and replace the toplevel call to + Classes in the :mod:`tkinter.tix` module subclasses the classes in the + :mod:`tkinter`. The former imports the latter, so to use :mod:`tkinter.tix` + with Tkinter, all you need to do is to import one module. In general, you + can just import :mod:`tkinter.tix`, and replace the toplevel call to :class:`tkinter.Tk` with :class:`tix.Tk`:: from tkinter import tix @@ -437,7 +437,7 @@ Image Types The :mod:`tkinter.tix` module adds: * `pixmap <http://tix.sourceforge.net/dist/current/man/html/TixCmd/pixmap.htm>`_ - capabilities to all :mod:`tkinter.tix` and :mod:`tkinter` widgets to create + capabilities to all :mod:`tkinter.tix` and :mod:`tkinter` widgets to create color images from XPM files. .. Python Demo of: diff --git a/Doc/library/tokenize.rst b/Doc/library/tokenize.rst index b2caded..197b574 100644 --- a/Doc/library/tokenize.rst +++ b/Doc/library/tokenize.rst @@ -19,16 +19,16 @@ The primary entry point is a :term:`generator`: The :func:`tokenize` generator requires one argument, *readline*, which must be a callable object which provides the same interface as the :meth:`readline` method of built-in file objects (see section - :ref:`bltin-file-objects`). Each call to the function should return one + :ref:`bltin-file-objects`). Each call to the function should return one line of input as bytes. - The generator produces 5-tuples with these members: the token type; the - token string; a 2-tuple ``(srow, scol)`` of ints specifying the row and - column where the token begins in the source; a 2-tuple ``(erow, ecol)`` of - ints specifying the row and column where the token ends in the source; and + The generator produces 5-tuples with these members: the token type; the + token string; a 2-tuple ``(srow, scol)`` of ints specifying the row and + column where the token begins in the source; a 2-tuple ``(erow, ecol)`` of + ints specifying the row and column where the token ends in the source; and the line on which the token was found. The line passed (the last tuple item) is the *logical* line; continuation lines are included. - + :func:`tokenize` determines the source encoding of the file by looking for a UTF-8 BOM or encoding cookie, according to :pep:`263`. @@ -44,35 +44,35 @@ All constants from the :mod:`token` module are also exported from .. data:: NL Token value used to indicate a non-terminating newline. The NEWLINE token - indicates the end of a logical line of Python code; NL tokens are generated + indicates the end of a logical line of Python code; NL tokens are generated when a logical line of code is continued over multiple physical lines. .. data:: ENCODING - Token value that indicates the encoding used to decode the source bytes - into text. The first token returned by :func:`tokenize` will always be an + Token value that indicates the encoding used to decode the source bytes + into text. The first token returned by :func:`tokenize` will always be an ENCODING token. -Another function is provided to reverse the tokenization process. This is -useful for creating tools that tokenize a script, modify the token stream, and +Another function is provided to reverse the tokenization process. This is +useful for creating tools that tokenize a script, modify the token stream, and write back the modified script. .. function:: untokenize(iterable) Converts tokens back into Python source code. The *iterable* must return - sequences with at least two elements, the token type and the token string. + sequences with at least two elements, the token type and the token string. Any additional sequence elements are ignored. - + The reconstructed script is returned as a single string. The result is guaranteed to tokenize back to match the input so that the conversion is - lossless and round-trips are assured. The guarantee applies only to the - token type and token string as the spacing between tokens (column + lossless and round-trips are assured. The guarantee applies only to the + token type and token string as the spacing between tokens (column positions) may change. - - It returns bytes, encoded using the ENCODING token, which is the first + + It returns bytes, encoded using the ENCODING token, which is the first token sequence output by :func:`tokenize`. @@ -81,43 +81,43 @@ function it uses to do this is available: .. function:: detect_encoding(readline) - The :func:`detect_encoding` function is used to detect the encoding that - should be used to decode a Python source file. It requires one argment, + The :func:`detect_encoding` function is used to detect the encoding that + should be used to decode a Python source file. It requires one argment, readline, in the same way as the :func:`tokenize` generator. - + It will call readline a maximum of twice, and return the encoding used (as a string) and a list of any lines (not decoded from bytes) it has read in. - + It detects the encoding from the presence of a utf-8 bom or an encoding cookie as specified in pep-0263. If both a bom and a cookie are present, but disagree, a SyntaxError will be raised. - - If no encoding is specified, then the default of 'utf-8' will be returned. - + If no encoding is specified, then the default of 'utf-8' will be returned. + + Example of a script re-writer that transforms float literals into Decimal objects:: def decistmt(s): """Substitute Decimals for floats in a string of statements. - + >>> from decimal import Decimal >>> s = 'print(+21.3e-5*-.1234/81.7)' >>> decistmt(s) "print (+Decimal ('21.3e-5')*-Decimal ('.1234')/Decimal ('81.7'))" - + The format of the exponent is inherited from the platform C library. Known cases are "e-007" (Windows) and "e-07" (not Windows). Since we're only showing 12 digits, and the 13th isn't close to 5, the rest of the output should be platform-independent. - + >>> exec(s) #doctest: +ELLIPSIS -3.21716034272e-0...7 - + Output from calculations with Decimal should be identical across all platforms. - + >>> exec(decistmt(s)) -3.217160342717258261933904529E-7 """ diff --git a/Doc/library/trace.rst b/Doc/library/trace.rst index 05d5d66..f79d7e5 100644 --- a/Doc/library/trace.rst +++ b/Doc/library/trace.rst @@ -65,13 +65,13 @@ The following command-line arguments are supported: :option:`--ignore-module` Accepts comma separated list of module names. Ignore each of the named - module and its submodules (if it is a package). May be given + module and its submodules (if it is a package). May be given multiple times. :option:`--ignore-dir` Ignore all modules and packages in the named directory and subdirectories (multiple directories can be joined by os.pathsep). May be given multiple - times. + times. .. _trace-api: diff --git a/Doc/library/traceback.rst b/Doc/library/traceback.rst index dd3ae69..1129745 100644 --- a/Doc/library/traceback.rst +++ b/Doc/library/traceback.rst @@ -163,10 +163,10 @@ exception and traceback:: def lumberjack(): bright_side_of_death() - + def bright_side_of_death(): return tuple()[0] - + try: lumberjack() except: @@ -245,12 +245,12 @@ The following example shows the different ways to print and format the stack:: >>> import traceback >>> def another_function(): ... lumberstack() - ... + ... >>> def lumberstack(): ... traceback.print_stack() ... print(repr(traceback.extract_stack())) ... print(repr(traceback.format_stack())) - ... + ... >>> another_function() File "<doctest>", line 10, in <module> another_function() diff --git a/Doc/library/turtle.rst b/Doc/library/turtle.rst index 64df742..0a7acea 100644 --- a/Doc/library/turtle.rst +++ b/Doc/library/turtle.rst @@ -1563,7 +1563,7 @@ The public classes of the module :mod:`turtle` Subclass of TurtleScreen, with :ref:`four methods added <screenspecific>`. - + .. class:: ScrolledCavas(master) :param master: some Tkinter widget to contain the ScrolledCanvas, i.e. @@ -1588,13 +1588,13 @@ The public classes of the module :mod:`turtle` "compound" ``None`` (a compund shape has to be constructed using the :meth:`addcomponent` method) =========== =========== - + .. method:: addcomponent(poly, fill, outline=None) :param poly: a polygon, i.e. a tuple of pairs of numbers :param fill: a color the *poly* will be filled with :param outline: a color for the poly's outline (if given) - + Example: >>> poly = ((0,0),(10,-5),(0,10),(-10,-5)) @@ -1638,31 +1638,31 @@ facilities: >>> help(Screen.bgcolor) Help on method bgcolor in module turtle: - + bgcolor(self, *args) unbound turtle.Screen method Set or return backgroundcolor of the TurtleScreen. - + Arguments (if given): a color string or three numbers in the range 0..colormode or a 3-tuple of such numbers. - - + + >>> screen.bgcolor("orange") >>> screen.bgcolor() "orange" >>> screen.bgcolor(0.5,0,0.5) >>> screen.bgcolor() "#800080" - + >>> help(Turtle.penup) Help on method penup in module turtle: - + penup(self) unbound turtle.Turtle method Pull the pen up -- no drawing when moving. - + Aliases: penup | pu | up - + No argument - + >>> turtle.penup() - The docstrings of the functions which are derived from methods have a modified @@ -1670,32 +1670,32 @@ facilities: >>> help(bgcolor) Help on function bgcolor in module turtle: - + bgcolor(*args) Set or return backgroundcolor of the TurtleScreen. - + Arguments (if given): a color string or three numbers in the range 0..colormode or a 3-tuple of such numbers. - + Example:: - + >>> bgcolor("orange") >>> bgcolor() "orange" >>> bgcolor(0.5,0,0.5) >>> bgcolor() "#800080" - + >>> help(penup) Help on function penup in module turtle: - + penup() Pull the pen up -- no drawing when moving. - + Aliases: penup | pu | up - + No argument - + Example: >>> penup() @@ -1871,19 +1871,19 @@ Have fun! Changes since Python 2.6 ======================== -- The methods :meth:`Turtle.tracer`, :meth:`Turtle.window_width` and - :meth:`Turtle.window_height` have been eliminated. - Methods with these names and functionality are now available only +- The methods :meth:`Turtle.tracer`, :meth:`Turtle.window_width` and + :meth:`Turtle.window_height` have been eliminated. + Methods with these names and functionality are now available only as methods of :class:`Screen`. The functions derived from these remain - available. (In fact already in Python 2.6 these methods were merely - duplications of the corresponding + available. (In fact already in Python 2.6 these methods were merely + duplications of the corresponding :class:`TurtleScreen`/:class:`Screen`-methods.) -- The method :meth:`Turtle.fill` has been eliminated. - The behaviour of :meth:`begin_fill` and :meth:`end_fill` - have changed slightly: now every filling-process must be completed with an +- The method :meth:`Turtle.fill` has been eliminated. + The behaviour of :meth:`begin_fill` and :meth:`end_fill` + have changed slightly: now every filling-process must be completed with an ``end_fill()`` call. - + - A method :meth:`Turtle.filling` has been added. It returns a boolean value: ``True`` if a filling process is under way, ``False`` otherwise. This behaviour corresponds to a ``fill()`` call without arguments in diff --git a/Doc/library/unicodedata.rst b/Doc/library/unicodedata.rst index e8f5569..d8428a5 100644 --- a/Doc/library/unicodedata.rst +++ b/Doc/library/unicodedata.rst @@ -156,7 +156,7 @@ Examples: File "<stdin>", line 1, in ? ValueError: not a decimal >>> unicodedata.category('A') # 'L'etter, 'u'ppercase - 'Lu' + 'Lu' >>> unicodedata.bidirectional('\u0660') # 'A'rabic, 'N'umber 'AN' diff --git a/Doc/library/unittest.rst b/Doc/library/unittest.rst index 95ba1c4..8c078bc 100644 --- a/Doc/library/unittest.rst +++ b/Doc/library/unittest.rst @@ -591,7 +591,7 @@ failures. TestCase.failUnlessAlmostEqual(first, second[, places[, msg]]) Test that *first* and *second* are approximately equal by computing the - difference, rounding to the given number of decimal *places* (default 7), + difference, rounding to the given number of decimal *places* (default 7), and comparing to zero. Note that comparing a given number of decimal places is not the same as comparing a given number of significant digits. If the values do not compare @@ -602,7 +602,7 @@ failures. TestCase.failIfAlmostEqual(first, second[, places[, msg]]) Test that *first* and *second* are not approximately equal by computing the - difference, rounding to the given number of decimal *places* (default 7), + difference, rounding to the given number of decimal *places* (default 7), and comparing to zero. Note that comparing a given number of decimal places is not the same as comparing a given number of significant digits. If the values do not compare diff --git a/Doc/library/warnings.rst b/Doc/library/warnings.rst index 6a1b0df..f6b3db5 100644 --- a/Doc/library/warnings.rst +++ b/Doc/library/warnings.rst @@ -279,15 +279,15 @@ Available Functions this function with an alternative implementation by assigning to ``warnings.showwarning``. *line* is a line of source code to be included in the warning - message; if *line* is not supplied, :func:`showwarning` will + message; if *line* is not supplied, :func:`showwarning` will try to read the line specified by *filename* and *lineno*. .. function:: formatwarning(message, category, filename, lineno[, line]) Format a warning the standard way. This returns a string which may contain - embedded newlines and ends in a newline. *line* is - a line of source code to be included in the warning message; if *line* is not supplied, + embedded newlines and ends in a newline. *line* is + a line of source code to be included in the warning message; if *line* is not supplied, :func:`formatwarning` will try to read the line specified by *filename* and *lineno*. diff --git a/Doc/library/webbrowser.rst b/Doc/library/webbrowser.rst index 410fa48..ed56741 100644 --- a/Doc/library/webbrowser.rst +++ b/Doc/library/webbrowser.rst @@ -155,7 +155,7 @@ Here are some simple examples:: url = 'http://www.python.org' - # Open URL in a new tab, if a browser window is already open. + # Open URL in a new tab, if a browser window is already open. webbrowser.open_new_tab(url + '/doc') # Open URL in new window, raising the window if possible. diff --git a/Doc/library/wsgiref.rst b/Doc/library/wsgiref.rst index e2eb3b6..de2eb37 100644 --- a/Doc/library/wsgiref.rst +++ b/Doc/library/wsgiref.rst @@ -168,7 +168,7 @@ also provides these miscellaneous utilities: filelike = StringIO("This is an example file-like object"*10) wrapper = FileWrapper(filelike, blksize=5) - for chunk in wrapper: + for chunk in wrapper: print(chunk) @@ -413,7 +413,7 @@ Paste" library. from wsgiref.validate import validator from wsgiref.simple_server import make_server - # Our callable object which is intentionally not compliant to the + # Our callable object which is intentionally not compliant to the # standard, so the validator is going to break def simple_app(environ, start_response): status = b'200 OK' # HTTP Status diff --git a/Doc/library/xml.etree.elementtree.rst b/Doc/library/xml.etree.elementtree.rst index d411c24..623df5a 100644 --- a/Doc/library/xml.etree.elementtree.rst +++ b/Doc/library/xml.etree.elementtree.rst @@ -32,7 +32,7 @@ convert it from and to XML. A C implementation of this API is available as :mod:`xml.etree.cElementTree`. See http://effbot.org/zone/element-index.htm for tutorials and links to other -docs. Fredrik Lundh's page is also the location of the development version of the +docs. Fredrik Lundh's page is also the location of the development version of the xml.etree.ElementTree. .. _elementtree-functions: @@ -379,7 +379,7 @@ This is the XML file that is going to be manipulated:: <title>Example page</title> </head> <body> - <p>Moved to <a href="http://example.org/">example.org</a> + <p>Moved to <a href="http://example.org/">example.org</a> or <a href="http://example.com/">example.com</a>.</p> </body> </html> @@ -486,9 +486,9 @@ XMLTreeBuilder Objects :meth:`XMLTreeBuilder.feed` calls *target*\'s :meth:`start` method for each opening tag, its :meth:`end` method for each closing tag, -and data is processed by method :meth:`data`. :meth:`XMLTreeBuilder.close` -calls *target*\'s method :meth:`close`. -:class:`XMLTreeBuilder` can be used not only for building a tree structure. +and data is processed by method :meth:`data`. :meth:`XMLTreeBuilder.close` +calls *target*\'s method :meth:`close`. +:class:`XMLTreeBuilder` can be used not only for building a tree structure. This is an example of counting the maximum depth of an XML file:: >>> from xml.etree.ElementTree import XMLTreeBuilder @@ -496,16 +496,16 @@ This is an example of counting the maximum depth of an XML file:: ... maxDepth = 0 ... depth = 0 ... def start(self, tag, attrib): # Called for each opening tag. - ... self.depth += 1 + ... self.depth += 1 ... if self.depth > self.maxDepth: ... self.maxDepth = self.depth ... def end(self, tag): # Called for each closing tag. ... self.depth -= 1 - ... def data(self, data): + ... def data(self, data): ... pass # We do not need to do anything with data. ... def close(self): # Called when all data has been parsed. ... return self.maxDepth - ... + ... >>> target = MaxDepth() >>> parser = XMLTreeBuilder(target=target) >>> exampleXml = """ diff --git a/Doc/library/xmlrpc.server.rst b/Doc/library/xmlrpc.server.rst index 1a9c757..0d75206 100644 --- a/Doc/library/xmlrpc.server.rst +++ b/Doc/library/xmlrpc.server.rst @@ -126,7 +126,7 @@ Server code:: requestHandler=RequestHandler) server.register_introspection_functions() - # Register pow() function; this will use the value of + # Register pow() function; this will use the value of # pow.__name__ as the name, which is just 'pow'. server.register_function(pow) @@ -135,10 +135,10 @@ Server code:: return x + y server.register_function(adder_function, 'add') - # Register an instance; all the methods of the instance are + # Register an instance; all the methods of the instance are # published as XML-RPC methods (in this case, just 'div'). class MyFuncs: - def div(self, x, y): + def div(self, x, y): return x // y server.register_instance(MyFuncs()) diff --git a/Doc/library/zipfile.rst b/Doc/library/zipfile.rst index 75860cc..3583856 100644 --- a/Doc/library/zipfile.rst +++ b/Doc/library/zipfile.rst @@ -193,7 +193,7 @@ ZipFile Objects .. method:: ZipFile.extractall([path[, members[, pwd]]]) - Extract all members from the archive to the current working directory. *path* + Extract all members from the archive to the current working directory. *path* specifies a different directory to extract to. *members* is optional and must be a subset of the list returned by :meth:`namelist`. *pwd* is the password used for encrypted files. @@ -266,9 +266,9 @@ ZipFile Objects .. note:: - When passing a :class:`ZipInfo` instance as the *zinfo_or_acrname* parameter, - the compression method used will be that specified in the *compress_type* - member of the given :class:`ZipInfo` instance. By default, the + When passing a :class:`ZipInfo` instance as the *zinfo_or_acrname* parameter, + the compression method used will be that specified in the *compress_type* + member of the given :class:`ZipInfo` instance. By default, the :class:`ZipInfo` constructor sets this member to :const:`ZIP_STORED`. The following data attributes are also available: @@ -282,9 +282,9 @@ The following data attributes are also available: .. attribute:: ZipFile.comment - The comment text associated with the ZIP file. If assigning a comment to a - :class:`ZipFile` instance created with mode 'a' or 'w', this should be a - string no longer than 65535 bytes. Comments longer than this will be + The comment text associated with the ZIP file. If assigning a comment to a + :class:`ZipFile` instance created with mode 'a' or 'w', this should be a + string no longer than 65535 bytes. Comments longer than this will be truncated in the written archive when :meth:`ZipFile.close` is called. .. _pyzipfile-objects: @@ -313,10 +313,10 @@ The :class:`PyZipFile` constructor takes the same parameters as the internal use only. The :meth:`writepy` method makes archives with file names like this:: - string.pyc # Top level name - test/__init__.pyc # Package directory + string.pyc # Top level name + test/__init__.pyc # Package directory test/testall.pyc # Module test.testall - test/bogus/__init__.pyc # Subpackage directory + test/bogus/__init__.pyc # Subpackage directory test/bogus/myfile.pyc # Submodule test.bogus.myfile diff --git a/Doc/library/zipimport.rst b/Doc/library/zipimport.rst index 82383bf..912378e 100644 --- a/Doc/library/zipimport.rst +++ b/Doc/library/zipimport.rst @@ -142,7 +142,7 @@ Here is an example that imports a module from a ZIP archive - note that the -------- ------- 8467 1 file $ ./python - Python 2.3 (#1, Aug 1 2003, 19:54:32) + Python 2.3 (#1, Aug 1 2003, 19:54:32) >>> import sys >>> sys.path.insert(0, '/tmp/example.zip') # Add .zip file to front of path >>> import jwzthreading |