2007-08-15 11:28:01 -03:00
|
|
|
.. _tut-informal:
|
|
|
|
|
|
|
|
**********************************
|
|
|
|
An Informal Introduction to Python
|
|
|
|
**********************************
|
|
|
|
|
|
|
|
In the following examples, input and output are distinguished by the presence or
|
|
|
|
absence of prompts (``>>>`` and ``...``): to repeat the example, you must type
|
|
|
|
everything after the prompt, when the prompt appears; lines that do not begin
|
|
|
|
with a prompt are output from the interpreter. Note that a secondary prompt on a
|
|
|
|
line by itself in an example means you must type a blank line; this is used to
|
|
|
|
end a multi-line command.
|
|
|
|
|
|
|
|
Many of the examples in this manual, even those entered at the interactive
|
|
|
|
prompt, include comments. Comments in Python start with the hash character,
|
2008-09-13 14:18:11 -03:00
|
|
|
``#``, and extend to the end of the physical line. A comment may appear at the
|
|
|
|
start of a line or following whitespace or code, but not within a string
|
2007-12-29 06:57:00 -04:00
|
|
|
literal. A hash character within a string literal is just a hash character.
|
2008-09-13 14:18:11 -03:00
|
|
|
Since comments are to clarify code and are not interpreted by Python, they may
|
|
|
|
be omitted when typing in examples.
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
Some examples::
|
|
|
|
|
|
|
|
# this is the first comment
|
|
|
|
SPAM = 1 # and this is the second comment
|
|
|
|
# ... and now a third!
|
|
|
|
STRING = "# This is not a comment."
|
|
|
|
|
|
|
|
|
|
|
|
.. _tut-calculator:
|
|
|
|
|
|
|
|
Using Python as a Calculator
|
|
|
|
============================
|
|
|
|
|
|
|
|
Let's try some simple Python commands. Start the interpreter and wait for the
|
|
|
|
primary prompt, ``>>>``. (It shouldn't take long.)
|
|
|
|
|
|
|
|
|
|
|
|
.. _tut-numbers:
|
|
|
|
|
|
|
|
Numbers
|
|
|
|
-------
|
|
|
|
|
|
|
|
The interpreter acts as a simple calculator: you can type an expression at it
|
|
|
|
and it will write the value. Expression syntax is straightforward: the
|
|
|
|
operators ``+``, ``-``, ``*`` and ``/`` work just like in most other languages
|
|
|
|
(for example, Pascal or C); parentheses can be used for grouping. For example::
|
|
|
|
|
|
|
|
>>> 2+2
|
|
|
|
4
|
|
|
|
>>> # This is a comment
|
|
|
|
... 2+2
|
|
|
|
4
|
|
|
|
>>> 2+2 # and a comment on the same line as code
|
|
|
|
4
|
|
|
|
>>> (50-5*6)/4
|
|
|
|
5
|
|
|
|
>>> # Integer division returns the floor:
|
|
|
|
... 7/3
|
|
|
|
2
|
|
|
|
>>> 7/-3
|
|
|
|
-3
|
|
|
|
|
|
|
|
The equal sign (``'='``) is used to assign a value to a variable. Afterwards, no
|
|
|
|
result is displayed before the next interactive prompt::
|
|
|
|
|
|
|
|
>>> width = 20
|
|
|
|
>>> height = 5*9
|
|
|
|
>>> width * height
|
|
|
|
900
|
|
|
|
|
|
|
|
A value can be assigned to several variables simultaneously::
|
|
|
|
|
|
|
|
>>> x = y = z = 0 # Zero x, y and z
|
|
|
|
>>> x
|
|
|
|
0
|
|
|
|
>>> y
|
|
|
|
0
|
|
|
|
>>> z
|
|
|
|
0
|
|
|
|
|
2008-09-13 14:18:11 -03:00
|
|
|
Variables must be "defined" (assigned a value) before they can be used, or an
|
|
|
|
error will occur::
|
|
|
|
|
|
|
|
>>> # try to access an undefined variable
|
|
|
|
... n
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
Traceback (most recent call last):
|
2008-09-13 14:18:11 -03:00
|
|
|
File "<stdin>", line 1, in <module>
|
|
|
|
NameError: name 'n' is not defined
|
|
|
|
|
2007-08-15 11:28:01 -03:00
|
|
|
There is full support for floating point; operators with mixed type operands
|
|
|
|
convert the integer operand to floating point::
|
|
|
|
|
|
|
|
>>> 3 * 3.75 / 1.5
|
|
|
|
7.5
|
|
|
|
>>> 7.0 / 2
|
|
|
|
3.5
|
|
|
|
|
|
|
|
Complex numbers are also supported; imaginary numbers are written with a suffix
|
|
|
|
of ``j`` or ``J``. Complex numbers with a nonzero real component are written as
|
|
|
|
``(real+imagj)``, or can be created with the ``complex(real, imag)`` function.
|
|
|
|
::
|
|
|
|
|
|
|
|
>>> 1j * 1J
|
|
|
|
(-1+0j)
|
|
|
|
>>> 1j * complex(0,1)
|
|
|
|
(-1+0j)
|
|
|
|
>>> 3+1j*3
|
|
|
|
(3+3j)
|
|
|
|
>>> (3+1j)*3
|
|
|
|
(9+3j)
|
|
|
|
>>> (1+2j)/(1+1j)
|
|
|
|
(1.5+0.5j)
|
|
|
|
|
|
|
|
Complex numbers are always represented as two floating point numbers, the real
|
|
|
|
and imaginary part. To extract these parts from a complex number *z*, use
|
|
|
|
``z.real`` and ``z.imag``. ::
|
|
|
|
|
|
|
|
>>> a=1.5+0.5j
|
|
|
|
>>> a.real
|
|
|
|
1.5
|
|
|
|
>>> a.imag
|
|
|
|
0.5
|
|
|
|
|
|
|
|
The conversion functions to floating point and integer (:func:`float`,
|
|
|
|
:func:`int` and :func:`long`) don't work for complex numbers --- there is no one
|
|
|
|
correct way to convert a complex number to a real number. Use ``abs(z)`` to get
|
|
|
|
its magnitude (as a float) or ``z.real`` to get its real part. ::
|
|
|
|
|
|
|
|
>>> a=3.0+4.0j
|
|
|
|
>>> float(a)
|
|
|
|
Traceback (most recent call last):
|
|
|
|
File "<stdin>", line 1, in ?
|
|
|
|
TypeError: can't convert complex to float; use abs(z)
|
|
|
|
>>> a.real
|
|
|
|
3.0
|
|
|
|
>>> a.imag
|
|
|
|
4.0
|
|
|
|
>>> abs(a) # sqrt(a.real**2 + a.imag**2)
|
|
|
|
5.0
|
|
|
|
|
|
|
|
In interactive mode, the last printed expression is assigned to the variable
|
|
|
|
``_``. This means that when you are using Python as a desk calculator, it is
|
|
|
|
somewhat easier to continue calculations, for example::
|
|
|
|
|
|
|
|
>>> tax = 12.5 / 100
|
|
|
|
>>> price = 100.50
|
|
|
|
>>> price * tax
|
|
|
|
12.5625
|
|
|
|
>>> price + _
|
|
|
|
113.0625
|
|
|
|
>>> round(_, 2)
|
|
|
|
113.06
|
|
|
|
|
|
|
|
This variable should be treated as read-only by the user. Don't explicitly
|
|
|
|
assign a value to it --- you would create an independent local variable with the
|
|
|
|
same name masking the built-in variable with its magic behavior.
|
|
|
|
|
|
|
|
|
|
|
|
.. _tut-strings:
|
|
|
|
|
|
|
|
Strings
|
|
|
|
-------
|
|
|
|
|
|
|
|
Besides numbers, Python can also manipulate strings, which can be expressed in
|
|
|
|
several ways. They can be enclosed in single quotes or double quotes::
|
|
|
|
|
|
|
|
>>> 'spam eggs'
|
|
|
|
'spam eggs'
|
|
|
|
>>> 'doesn\'t'
|
|
|
|
"doesn't"
|
|
|
|
>>> "doesn't"
|
|
|
|
"doesn't"
|
|
|
|
>>> '"Yes," he said.'
|
|
|
|
'"Yes," he said.'
|
|
|
|
>>> "\"Yes,\" he said."
|
|
|
|
'"Yes," he said.'
|
|
|
|
>>> '"Isn\'t," she said.'
|
|
|
|
'"Isn\'t," she said.'
|
|
|
|
|
|
|
|
String literals can span multiple lines in several ways. Continuation lines can
|
|
|
|
be used, with a backslash as the last character on the line indicating that the
|
|
|
|
next line is a logical continuation of the line::
|
|
|
|
|
|
|
|
hello = "This is a rather long string containing\n\
|
|
|
|
several lines of text just as you would do in C.\n\
|
|
|
|
Note that whitespace at the beginning of the line is\
|
|
|
|
significant."
|
|
|
|
|
|
|
|
print hello
|
|
|
|
|
|
|
|
Note that newlines still need to be embedded in the string using ``\n``; the
|
|
|
|
newline following the trailing backslash is discarded. This example would print
|
Merged revisions 74492,74531,74545-74550,74553-74555,74588,74603,74608,74614,74616-74618,74631-74633,74652-74653,74666,74671,74737,74739,74779,74781-74782,74784,74791,74793,74818-74820,74822,74832 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74492 | r.david.murray | 2009-08-17 21:26:49 +0200 (Mo, 17 Aug 2009) | 2 lines
Issue 6685: 'toupper' -> 'upper' in cgi doc example explanation.
........
r74531 | vinay.sajip | 2009-08-21 00:04:32 +0200 (Fr, 21 Aug 2009) | 1 line
Added section on exceptions raised during logging.
........
r74545 | georg.brandl | 2009-08-24 19:14:29 +0200 (Mo, 24 Aug 2009) | 1 line
#6772: mention utf-8 as utf8 alias.
........
r74546 | georg.brandl | 2009-08-24 19:20:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6725: spell "namespace" consistently.
........
r74547 | georg.brandl | 2009-08-24 19:22:05 +0200 (Mo, 24 Aug 2009) | 1 line
#6718: fix example.
........
r74548 | georg.brandl | 2009-08-24 19:24:27 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: mention "deleting" as an alias for removing files.
........
r74549 | benjamin.peterson | 2009-08-24 19:42:36 +0200 (Mo, 24 Aug 2009) | 1 line
fix pdf building by teaching latex the right encoding package
........
r74550 | georg.brandl | 2009-08-24 19:48:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: note that rmdir only removes empty directories.
........
r74553 | r.david.murray | 2009-08-27 03:04:59 +0200 (Do, 27 Aug 2009) | 2 lines
Remove leftover text from end of sentence.
........
r74554 | georg.brandl | 2009-08-27 20:59:02 +0200 (Do, 27 Aug 2009) | 1 line
Typo fix.
........
r74555 | georg.brandl | 2009-08-27 21:02:43 +0200 (Do, 27 Aug 2009) | 1 line
#6787: reference fix.
........
r74588 | georg.brandl | 2009-08-30 10:35:01 +0200 (So, 30 Aug 2009) | 1 line
#6803: fix old name.
........
r74603 | georg.brandl | 2009-08-31 08:38:29 +0200 (Mo, 31 Aug 2009) | 1 line
other -> others where multiple arguments are accepted.
........
r74608 | senthil.kumaran | 2009-08-31 18:40:27 +0200 (Mo, 31 Aug 2009) | 3 lines
Doc fix for the issue2637.
........
r74614 | georg.brandl | 2009-09-01 09:40:54 +0200 (Di, 01 Sep 2009) | 1 line
#6813: better documentation for numberless string formats.
........
r74616 | georg.brandl | 2009-09-01 09:46:26 +0200 (Di, 01 Sep 2009) | 1 line
#6808: clarification.
........
r74617 | georg.brandl | 2009-09-01 09:53:37 +0200 (Di, 01 Sep 2009) | 1 line
#6765: hint that log(x, base) is not very sophisticated.
........
r74618 | georg.brandl | 2009-09-01 10:00:47 +0200 (Di, 01 Sep 2009) | 1 line
#6810: add a link to the section about frame objects instead of just a description where to find it.
........
r74631 | georg.brandl | 2009-09-02 22:37:16 +0200 (Mi, 02 Sep 2009) | 1 line
#6821: fix signature of PyBuffer_Release().
........
r74632 | georg.brandl | 2009-09-03 09:27:26 +0200 (Do, 03 Sep 2009) | 1 line
#6828: fix wrongly highlighted blocks.
........
r74633 | georg.brandl | 2009-09-03 14:31:39 +0200 (Do, 03 Sep 2009) | 1 line
#6757: complete the list of types that marshal can serialize.
........
r74652 | georg.brandl | 2009-09-04 13:25:37 +0200 (Fr, 04 Sep 2009) | 1 line
#6756: add some info about the "acct" parameter.
........
r74653 | georg.brandl | 2009-09-04 13:32:18 +0200 (Fr, 04 Sep 2009) | 1 line
#6777: dont discourage usage of Exception.args or promote usage of Exception.message.
........
r74666 | georg.brandl | 2009-09-05 11:04:09 +0200 (Sa, 05 Sep 2009) | 1 line
#6841: remove duplicated word.
........
r74671 | georg.brandl | 2009-09-05 18:47:17 +0200 (Sa, 05 Sep 2009) | 1 line
#6843: add link from filterwarnings to where the meaning of the arguments is covered.
........
r74737 | georg.brandl | 2009-09-09 18:49:13 +0200 (Mi, 09 Sep 2009) | 1 line
Properly document copy and deepcopy as functions.
........
r74739 | georg.brandl | 2009-09-11 09:55:20 +0200 (Fr, 11 Sep 2009) | 1 line
Move function back to its section.
........
r74779 | michael.foord | 2009-09-13 18:13:36 +0200 (So, 13 Sep 2009) | 1 line
Change to tutorial wording for reading text / binary files on Windows. Issue #6301.
........
r74781 | michael.foord | 2009-09-13 18:46:19 +0200 (So, 13 Sep 2009) | 1 line
Note that sys._getframe is not guaranteed to exist in all implementations of Python, and a corresponding note in inspect.currentframe. Issue 6712.
........
r74782 | michael.foord | 2009-09-13 19:07:46 +0200 (So, 13 Sep 2009) | 1 line
Tutorial tweaks. Issue 6849.
........
r74784 | georg.brandl | 2009-09-13 20:15:07 +0200 (So, 13 Sep 2009) | 1 line
Typo fix.
........
r74791 | georg.brandl | 2009-09-14 16:08:54 +0200 (Mo, 14 Sep 2009) | 1 line
#6574: list the future features in a table.
........
r74793 | georg.brandl | 2009-09-14 16:50:47 +0200 (Mo, 14 Sep 2009) | 1 line
#6908: fix association of hashlib hash attributes.
........
r74818 | georg.brandl | 2009-09-16 11:23:04 +0200 (Mi, 16 Sep 2009) | 1 line
#6880: add reference to classes section in exceptions section, which comes earlier.
........
r74819 | georg.brandl | 2009-09-16 11:24:57 +0200 (Mi, 16 Sep 2009) | 1 line
#6876: fix base class constructor invocation in example.
........
r74820 | georg.brandl | 2009-09-16 11:30:48 +0200 (Mi, 16 Sep 2009) | 1 line
#6891: comment out dead link to Unicode article.
........
r74822 | georg.brandl | 2009-09-16 12:12:06 +0200 (Mi, 16 Sep 2009) | 1 line
#5621: refactor description of how class/instance attributes interact on a.x=a.x+1 or augassign.
........
r74832 | georg.brandl | 2009-09-16 17:57:46 +0200 (Mi, 16 Sep 2009) | 1 line
Rewrap long lines.
........
2009-10-27 11:50:20 -03:00
|
|
|
the following:
|
|
|
|
|
|
|
|
.. code-block:: text
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
This is a rather long string containing
|
|
|
|
several lines of text just as you would do in C.
|
|
|
|
Note that whitespace at the beginning of the line is significant.
|
|
|
|
|
|
|
|
Or, strings can be surrounded in a pair of matching triple-quotes: ``"""`` or
|
|
|
|
``'''``. End of lines do not need to be escaped when using triple-quotes, but
|
|
|
|
they will be included in the string. ::
|
|
|
|
|
|
|
|
print """
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
Usage: thingy [OPTIONS]
|
2007-08-15 11:28:01 -03:00
|
|
|
-h Display this usage message
|
|
|
|
-H hostname Hostname to connect to
|
|
|
|
"""
|
|
|
|
|
Merged revisions 74492,74531,74545-74550,74553-74555,74588,74603,74608,74614,74616-74618,74631-74633,74652-74653,74666,74671,74737,74739,74779,74781-74782,74784,74791,74793,74818-74820,74822,74832 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74492 | r.david.murray | 2009-08-17 21:26:49 +0200 (Mo, 17 Aug 2009) | 2 lines
Issue 6685: 'toupper' -> 'upper' in cgi doc example explanation.
........
r74531 | vinay.sajip | 2009-08-21 00:04:32 +0200 (Fr, 21 Aug 2009) | 1 line
Added section on exceptions raised during logging.
........
r74545 | georg.brandl | 2009-08-24 19:14:29 +0200 (Mo, 24 Aug 2009) | 1 line
#6772: mention utf-8 as utf8 alias.
........
r74546 | georg.brandl | 2009-08-24 19:20:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6725: spell "namespace" consistently.
........
r74547 | georg.brandl | 2009-08-24 19:22:05 +0200 (Mo, 24 Aug 2009) | 1 line
#6718: fix example.
........
r74548 | georg.brandl | 2009-08-24 19:24:27 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: mention "deleting" as an alias for removing files.
........
r74549 | benjamin.peterson | 2009-08-24 19:42:36 +0200 (Mo, 24 Aug 2009) | 1 line
fix pdf building by teaching latex the right encoding package
........
r74550 | georg.brandl | 2009-08-24 19:48:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: note that rmdir only removes empty directories.
........
r74553 | r.david.murray | 2009-08-27 03:04:59 +0200 (Do, 27 Aug 2009) | 2 lines
Remove leftover text from end of sentence.
........
r74554 | georg.brandl | 2009-08-27 20:59:02 +0200 (Do, 27 Aug 2009) | 1 line
Typo fix.
........
r74555 | georg.brandl | 2009-08-27 21:02:43 +0200 (Do, 27 Aug 2009) | 1 line
#6787: reference fix.
........
r74588 | georg.brandl | 2009-08-30 10:35:01 +0200 (So, 30 Aug 2009) | 1 line
#6803: fix old name.
........
r74603 | georg.brandl | 2009-08-31 08:38:29 +0200 (Mo, 31 Aug 2009) | 1 line
other -> others where multiple arguments are accepted.
........
r74608 | senthil.kumaran | 2009-08-31 18:40:27 +0200 (Mo, 31 Aug 2009) | 3 lines
Doc fix for the issue2637.
........
r74614 | georg.brandl | 2009-09-01 09:40:54 +0200 (Di, 01 Sep 2009) | 1 line
#6813: better documentation for numberless string formats.
........
r74616 | georg.brandl | 2009-09-01 09:46:26 +0200 (Di, 01 Sep 2009) | 1 line
#6808: clarification.
........
r74617 | georg.brandl | 2009-09-01 09:53:37 +0200 (Di, 01 Sep 2009) | 1 line
#6765: hint that log(x, base) is not very sophisticated.
........
r74618 | georg.brandl | 2009-09-01 10:00:47 +0200 (Di, 01 Sep 2009) | 1 line
#6810: add a link to the section about frame objects instead of just a description where to find it.
........
r74631 | georg.brandl | 2009-09-02 22:37:16 +0200 (Mi, 02 Sep 2009) | 1 line
#6821: fix signature of PyBuffer_Release().
........
r74632 | georg.brandl | 2009-09-03 09:27:26 +0200 (Do, 03 Sep 2009) | 1 line
#6828: fix wrongly highlighted blocks.
........
r74633 | georg.brandl | 2009-09-03 14:31:39 +0200 (Do, 03 Sep 2009) | 1 line
#6757: complete the list of types that marshal can serialize.
........
r74652 | georg.brandl | 2009-09-04 13:25:37 +0200 (Fr, 04 Sep 2009) | 1 line
#6756: add some info about the "acct" parameter.
........
r74653 | georg.brandl | 2009-09-04 13:32:18 +0200 (Fr, 04 Sep 2009) | 1 line
#6777: dont discourage usage of Exception.args or promote usage of Exception.message.
........
r74666 | georg.brandl | 2009-09-05 11:04:09 +0200 (Sa, 05 Sep 2009) | 1 line
#6841: remove duplicated word.
........
r74671 | georg.brandl | 2009-09-05 18:47:17 +0200 (Sa, 05 Sep 2009) | 1 line
#6843: add link from filterwarnings to where the meaning of the arguments is covered.
........
r74737 | georg.brandl | 2009-09-09 18:49:13 +0200 (Mi, 09 Sep 2009) | 1 line
Properly document copy and deepcopy as functions.
........
r74739 | georg.brandl | 2009-09-11 09:55:20 +0200 (Fr, 11 Sep 2009) | 1 line
Move function back to its section.
........
r74779 | michael.foord | 2009-09-13 18:13:36 +0200 (So, 13 Sep 2009) | 1 line
Change to tutorial wording for reading text / binary files on Windows. Issue #6301.
........
r74781 | michael.foord | 2009-09-13 18:46:19 +0200 (So, 13 Sep 2009) | 1 line
Note that sys._getframe is not guaranteed to exist in all implementations of Python, and a corresponding note in inspect.currentframe. Issue 6712.
........
r74782 | michael.foord | 2009-09-13 19:07:46 +0200 (So, 13 Sep 2009) | 1 line
Tutorial tweaks. Issue 6849.
........
r74784 | georg.brandl | 2009-09-13 20:15:07 +0200 (So, 13 Sep 2009) | 1 line
Typo fix.
........
r74791 | georg.brandl | 2009-09-14 16:08:54 +0200 (Mo, 14 Sep 2009) | 1 line
#6574: list the future features in a table.
........
r74793 | georg.brandl | 2009-09-14 16:50:47 +0200 (Mo, 14 Sep 2009) | 1 line
#6908: fix association of hashlib hash attributes.
........
r74818 | georg.brandl | 2009-09-16 11:23:04 +0200 (Mi, 16 Sep 2009) | 1 line
#6880: add reference to classes section in exceptions section, which comes earlier.
........
r74819 | georg.brandl | 2009-09-16 11:24:57 +0200 (Mi, 16 Sep 2009) | 1 line
#6876: fix base class constructor invocation in example.
........
r74820 | georg.brandl | 2009-09-16 11:30:48 +0200 (Mi, 16 Sep 2009) | 1 line
#6891: comment out dead link to Unicode article.
........
r74822 | georg.brandl | 2009-09-16 12:12:06 +0200 (Mi, 16 Sep 2009) | 1 line
#5621: refactor description of how class/instance attributes interact on a.x=a.x+1 or augassign.
........
r74832 | georg.brandl | 2009-09-16 17:57:46 +0200 (Mi, 16 Sep 2009) | 1 line
Rewrap long lines.
........
2009-10-27 11:50:20 -03:00
|
|
|
produces the following output:
|
|
|
|
|
|
|
|
.. code-block:: text
|
2007-08-15 11:28:01 -03:00
|
|
|
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
Usage: thingy [OPTIONS]
|
2007-08-15 11:28:01 -03:00
|
|
|
-h Display this usage message
|
|
|
|
-H hostname Hostname to connect to
|
|
|
|
|
Merged revisions 70866-70868,70870-70871,70893,70896,70902,70905,70907,70912,70915,70927,70933,70940,70944,70954,70963,70998,71056 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r70866 | georg.brandl | 2009-03-31 21:06:57 +0200 (Di, 31 Mär 2009) | 1 line
#4882: document named group behavior a bit better.
........
r70867 | georg.brandl | 2009-03-31 21:10:35 +0200 (Di, 31 Mär 2009) | 1 line
#1096310: document usage of sys.__std*__ a bit better.
........
r70868 | georg.brandl | 2009-03-31 21:12:17 +0200 (Di, 31 Mär 2009) | 1 line
#5190: export make_option in __all__.
........
r70870 | georg.brandl | 2009-03-31 21:26:24 +0200 (Di, 31 Mär 2009) | 1 line
#4411: document mro() and __mro__. (I hope I got it right.)
........
r70871 | georg.brandl | 2009-03-31 21:30:56 +0200 (Di, 31 Mär 2009) | 1 line
#5618: fix typo.
........
r70893 | georg.brandl | 2009-03-31 22:56:32 +0200 (Di, 31 Mär 2009) | 1 line
#1530012: move TQS section before raw strings.
........
r70896 | georg.brandl | 2009-03-31 23:15:33 +0200 (Di, 31 Mär 2009) | 1 line
#5598: document DocFileSuite *args argument.
........
r70902 | georg.brandl | 2009-03-31 23:43:03 +0200 (Di, 31 Mär 2009) | 1 line
#1675026: add a note about a strange Windows problem, and remove notes about AtheOS.
........
r70905 | georg.brandl | 2009-04-01 00:03:40 +0200 (Mi, 01 Apr 2009) | 1 line
#5563: more documentation for bdist_msi.
........
r70907 | georg.brandl | 2009-04-01 00:18:19 +0200 (Mi, 01 Apr 2009) | 1 line
#3427: document correct return type for urlopen().info().
........
r70912 | georg.brandl | 2009-04-01 00:35:46 +0200 (Mi, 01 Apr 2009) | 1 line
#5617: add a handy function to print a unicode string to gdbinit.
........
r70915 | georg.brandl | 2009-04-01 00:40:16 +0200 (Mi, 01 Apr 2009) | 1 line
#5018: remove confusing paragraph.
........
r70927 | georg.brandl | 2009-04-01 01:01:27 +0200 (Mi, 01 Apr 2009) | 1 line
Dont shout to users.
........
r70933 | georg.brandl | 2009-04-01 02:04:33 +0200 (Mi, 01 Apr 2009) | 2 lines
Issue #5635: Fix running test_sys with tracing enabled.
........
r70940 | georg.brandl | 2009-04-01 06:21:14 +0200 (Mi, 01 Apr 2009) | 2 lines
The SimpleXMLRPCServer's CGI handler now runs like a pony.
........
r70944 | georg.brandl | 2009-04-01 06:32:39 +0200 (Mi, 01 Apr 2009) | 1 line
#5631: add upload to list of possible commands, which is presented in --help-commands.
........
r70954 | georg.brandl | 2009-04-01 17:23:43 +0200 (Mi, 01 Apr 2009) | 1 line
Fix test_xmlrpc and make the CGI handler work with no CONTENT_LENGTH.
........
r70963 | georg.brandl | 2009-04-01 19:46:01 +0200 (Mi, 01 Apr 2009) | 1 line
#5655: fix docstring oversight.
........
r70998 | georg.brandl | 2009-04-01 23:54:21 +0200 (Mi, 01 Apr 2009) | 1 line
In Pdb, stop assigning values to __builtin__._ which interferes with the one commonly installed by gettext.
........
r71056 | georg.brandl | 2009-04-02 19:43:07 +0200 (Do, 02 Apr 2009) | 2 lines
Actually the displayhook should print the repr.
........
2009-04-05 18:21:05 -03:00
|
|
|
If we make the string literal a "raw" string, ``\n`` sequences are not converted
|
|
|
|
to newlines, but the backslash at the end of the line, and the newline character
|
|
|
|
in the source, are both included in the string as data. Thus, the example::
|
|
|
|
|
|
|
|
hello = r"This is a rather long string containing\n\
|
|
|
|
several lines of text much as you would do in C."
|
|
|
|
|
|
|
|
print hello
|
|
|
|
|
Merged revisions 74492,74531,74545-74550,74553-74555,74588,74603,74608,74614,74616-74618,74631-74633,74652-74653,74666,74671,74737,74739,74779,74781-74782,74784,74791,74793,74818-74820,74822,74832 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74492 | r.david.murray | 2009-08-17 21:26:49 +0200 (Mo, 17 Aug 2009) | 2 lines
Issue 6685: 'toupper' -> 'upper' in cgi doc example explanation.
........
r74531 | vinay.sajip | 2009-08-21 00:04:32 +0200 (Fr, 21 Aug 2009) | 1 line
Added section on exceptions raised during logging.
........
r74545 | georg.brandl | 2009-08-24 19:14:29 +0200 (Mo, 24 Aug 2009) | 1 line
#6772: mention utf-8 as utf8 alias.
........
r74546 | georg.brandl | 2009-08-24 19:20:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6725: spell "namespace" consistently.
........
r74547 | georg.brandl | 2009-08-24 19:22:05 +0200 (Mo, 24 Aug 2009) | 1 line
#6718: fix example.
........
r74548 | georg.brandl | 2009-08-24 19:24:27 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: mention "deleting" as an alias for removing files.
........
r74549 | benjamin.peterson | 2009-08-24 19:42:36 +0200 (Mo, 24 Aug 2009) | 1 line
fix pdf building by teaching latex the right encoding package
........
r74550 | georg.brandl | 2009-08-24 19:48:40 +0200 (Mo, 24 Aug 2009) | 1 line
#6677: note that rmdir only removes empty directories.
........
r74553 | r.david.murray | 2009-08-27 03:04:59 +0200 (Do, 27 Aug 2009) | 2 lines
Remove leftover text from end of sentence.
........
r74554 | georg.brandl | 2009-08-27 20:59:02 +0200 (Do, 27 Aug 2009) | 1 line
Typo fix.
........
r74555 | georg.brandl | 2009-08-27 21:02:43 +0200 (Do, 27 Aug 2009) | 1 line
#6787: reference fix.
........
r74588 | georg.brandl | 2009-08-30 10:35:01 +0200 (So, 30 Aug 2009) | 1 line
#6803: fix old name.
........
r74603 | georg.brandl | 2009-08-31 08:38:29 +0200 (Mo, 31 Aug 2009) | 1 line
other -> others where multiple arguments are accepted.
........
r74608 | senthil.kumaran | 2009-08-31 18:40:27 +0200 (Mo, 31 Aug 2009) | 3 lines
Doc fix for the issue2637.
........
r74614 | georg.brandl | 2009-09-01 09:40:54 +0200 (Di, 01 Sep 2009) | 1 line
#6813: better documentation for numberless string formats.
........
r74616 | georg.brandl | 2009-09-01 09:46:26 +0200 (Di, 01 Sep 2009) | 1 line
#6808: clarification.
........
r74617 | georg.brandl | 2009-09-01 09:53:37 +0200 (Di, 01 Sep 2009) | 1 line
#6765: hint that log(x, base) is not very sophisticated.
........
r74618 | georg.brandl | 2009-09-01 10:00:47 +0200 (Di, 01 Sep 2009) | 1 line
#6810: add a link to the section about frame objects instead of just a description where to find it.
........
r74631 | georg.brandl | 2009-09-02 22:37:16 +0200 (Mi, 02 Sep 2009) | 1 line
#6821: fix signature of PyBuffer_Release().
........
r74632 | georg.brandl | 2009-09-03 09:27:26 +0200 (Do, 03 Sep 2009) | 1 line
#6828: fix wrongly highlighted blocks.
........
r74633 | georg.brandl | 2009-09-03 14:31:39 +0200 (Do, 03 Sep 2009) | 1 line
#6757: complete the list of types that marshal can serialize.
........
r74652 | georg.brandl | 2009-09-04 13:25:37 +0200 (Fr, 04 Sep 2009) | 1 line
#6756: add some info about the "acct" parameter.
........
r74653 | georg.brandl | 2009-09-04 13:32:18 +0200 (Fr, 04 Sep 2009) | 1 line
#6777: dont discourage usage of Exception.args or promote usage of Exception.message.
........
r74666 | georg.brandl | 2009-09-05 11:04:09 +0200 (Sa, 05 Sep 2009) | 1 line
#6841: remove duplicated word.
........
r74671 | georg.brandl | 2009-09-05 18:47:17 +0200 (Sa, 05 Sep 2009) | 1 line
#6843: add link from filterwarnings to where the meaning of the arguments is covered.
........
r74737 | georg.brandl | 2009-09-09 18:49:13 +0200 (Mi, 09 Sep 2009) | 1 line
Properly document copy and deepcopy as functions.
........
r74739 | georg.brandl | 2009-09-11 09:55:20 +0200 (Fr, 11 Sep 2009) | 1 line
Move function back to its section.
........
r74779 | michael.foord | 2009-09-13 18:13:36 +0200 (So, 13 Sep 2009) | 1 line
Change to tutorial wording for reading text / binary files on Windows. Issue #6301.
........
r74781 | michael.foord | 2009-09-13 18:46:19 +0200 (So, 13 Sep 2009) | 1 line
Note that sys._getframe is not guaranteed to exist in all implementations of Python, and a corresponding note in inspect.currentframe. Issue 6712.
........
r74782 | michael.foord | 2009-09-13 19:07:46 +0200 (So, 13 Sep 2009) | 1 line
Tutorial tweaks. Issue 6849.
........
r74784 | georg.brandl | 2009-09-13 20:15:07 +0200 (So, 13 Sep 2009) | 1 line
Typo fix.
........
r74791 | georg.brandl | 2009-09-14 16:08:54 +0200 (Mo, 14 Sep 2009) | 1 line
#6574: list the future features in a table.
........
r74793 | georg.brandl | 2009-09-14 16:50:47 +0200 (Mo, 14 Sep 2009) | 1 line
#6908: fix association of hashlib hash attributes.
........
r74818 | georg.brandl | 2009-09-16 11:23:04 +0200 (Mi, 16 Sep 2009) | 1 line
#6880: add reference to classes section in exceptions section, which comes earlier.
........
r74819 | georg.brandl | 2009-09-16 11:24:57 +0200 (Mi, 16 Sep 2009) | 1 line
#6876: fix base class constructor invocation in example.
........
r74820 | georg.brandl | 2009-09-16 11:30:48 +0200 (Mi, 16 Sep 2009) | 1 line
#6891: comment out dead link to Unicode article.
........
r74822 | georg.brandl | 2009-09-16 12:12:06 +0200 (Mi, 16 Sep 2009) | 1 line
#5621: refactor description of how class/instance attributes interact on a.x=a.x+1 or augassign.
........
r74832 | georg.brandl | 2009-09-16 17:57:46 +0200 (Mi, 16 Sep 2009) | 1 line
Rewrap long lines.
........
2009-10-27 11:50:20 -03:00
|
|
|
would print:
|
|
|
|
|
|
|
|
.. code-block:: text
|
Merged revisions 70866-70868,70870-70871,70893,70896,70902,70905,70907,70912,70915,70927,70933,70940,70944,70954,70963,70998,71056 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r70866 | georg.brandl | 2009-03-31 21:06:57 +0200 (Di, 31 Mär 2009) | 1 line
#4882: document named group behavior a bit better.
........
r70867 | georg.brandl | 2009-03-31 21:10:35 +0200 (Di, 31 Mär 2009) | 1 line
#1096310: document usage of sys.__std*__ a bit better.
........
r70868 | georg.brandl | 2009-03-31 21:12:17 +0200 (Di, 31 Mär 2009) | 1 line
#5190: export make_option in __all__.
........
r70870 | georg.brandl | 2009-03-31 21:26:24 +0200 (Di, 31 Mär 2009) | 1 line
#4411: document mro() and __mro__. (I hope I got it right.)
........
r70871 | georg.brandl | 2009-03-31 21:30:56 +0200 (Di, 31 Mär 2009) | 1 line
#5618: fix typo.
........
r70893 | georg.brandl | 2009-03-31 22:56:32 +0200 (Di, 31 Mär 2009) | 1 line
#1530012: move TQS section before raw strings.
........
r70896 | georg.brandl | 2009-03-31 23:15:33 +0200 (Di, 31 Mär 2009) | 1 line
#5598: document DocFileSuite *args argument.
........
r70902 | georg.brandl | 2009-03-31 23:43:03 +0200 (Di, 31 Mär 2009) | 1 line
#1675026: add a note about a strange Windows problem, and remove notes about AtheOS.
........
r70905 | georg.brandl | 2009-04-01 00:03:40 +0200 (Mi, 01 Apr 2009) | 1 line
#5563: more documentation for bdist_msi.
........
r70907 | georg.brandl | 2009-04-01 00:18:19 +0200 (Mi, 01 Apr 2009) | 1 line
#3427: document correct return type for urlopen().info().
........
r70912 | georg.brandl | 2009-04-01 00:35:46 +0200 (Mi, 01 Apr 2009) | 1 line
#5617: add a handy function to print a unicode string to gdbinit.
........
r70915 | georg.brandl | 2009-04-01 00:40:16 +0200 (Mi, 01 Apr 2009) | 1 line
#5018: remove confusing paragraph.
........
r70927 | georg.brandl | 2009-04-01 01:01:27 +0200 (Mi, 01 Apr 2009) | 1 line
Dont shout to users.
........
r70933 | georg.brandl | 2009-04-01 02:04:33 +0200 (Mi, 01 Apr 2009) | 2 lines
Issue #5635: Fix running test_sys with tracing enabled.
........
r70940 | georg.brandl | 2009-04-01 06:21:14 +0200 (Mi, 01 Apr 2009) | 2 lines
The SimpleXMLRPCServer's CGI handler now runs like a pony.
........
r70944 | georg.brandl | 2009-04-01 06:32:39 +0200 (Mi, 01 Apr 2009) | 1 line
#5631: add upload to list of possible commands, which is presented in --help-commands.
........
r70954 | georg.brandl | 2009-04-01 17:23:43 +0200 (Mi, 01 Apr 2009) | 1 line
Fix test_xmlrpc and make the CGI handler work with no CONTENT_LENGTH.
........
r70963 | georg.brandl | 2009-04-01 19:46:01 +0200 (Mi, 01 Apr 2009) | 1 line
#5655: fix docstring oversight.
........
r70998 | georg.brandl | 2009-04-01 23:54:21 +0200 (Mi, 01 Apr 2009) | 1 line
In Pdb, stop assigning values to __builtin__._ which interferes with the one commonly installed by gettext.
........
r71056 | georg.brandl | 2009-04-02 19:43:07 +0200 (Do, 02 Apr 2009) | 2 lines
Actually the displayhook should print the repr.
........
2009-04-05 18:21:05 -03:00
|
|
|
|
|
|
|
This is a rather long string containing\n\
|
|
|
|
several lines of text much as you would do in C.
|
|
|
|
|
2007-08-15 11:28:01 -03:00
|
|
|
The interpreter prints the result of string operations in the same way as they
|
|
|
|
are typed for input: inside quotes, and with quotes and other funny characters
|
|
|
|
escaped by backslashes, to show the precise value. The string is enclosed in
|
|
|
|
double quotes if the string contains a single quote and no double quotes, else
|
|
|
|
it's enclosed in single quotes. (The :keyword:`print` statement, described
|
|
|
|
later, can be used to write strings without quotes or escapes.)
|
|
|
|
|
|
|
|
Strings can be concatenated (glued together) with the ``+`` operator, and
|
|
|
|
repeated with ``*``::
|
|
|
|
|
|
|
|
>>> word = 'Help' + 'A'
|
|
|
|
>>> word
|
|
|
|
'HelpA'
|
|
|
|
>>> '<' + word*5 + '>'
|
|
|
|
'<HelpAHelpAHelpAHelpAHelpA>'
|
|
|
|
|
|
|
|
Two string literals next to each other are automatically concatenated; the first
|
|
|
|
line above could also have been written ``word = 'Help' 'A'``; this only works
|
|
|
|
with two literals, not with arbitrary string expressions::
|
|
|
|
|
|
|
|
>>> 'str' 'ing' # <- This is ok
|
|
|
|
'string'
|
|
|
|
>>> 'str'.strip() + 'ing' # <- This is ok
|
|
|
|
'string'
|
|
|
|
>>> 'str'.strip() 'ing' # <- This is invalid
|
|
|
|
File "<stdin>", line 1, in ?
|
|
|
|
'str'.strip() 'ing'
|
|
|
|
^
|
|
|
|
SyntaxError: invalid syntax
|
|
|
|
|
|
|
|
Strings can be subscripted (indexed); like in C, the first character of a string
|
|
|
|
has subscript (index) 0. There is no separate character type; a character is
|
|
|
|
simply a string of size one. Like in Icon, substrings can be specified with the
|
|
|
|
*slice notation*: two indices separated by a colon. ::
|
|
|
|
|
|
|
|
>>> word[4]
|
|
|
|
'A'
|
|
|
|
>>> word[0:2]
|
|
|
|
'He'
|
|
|
|
>>> word[2:4]
|
|
|
|
'lp'
|
|
|
|
|
|
|
|
Slice indices have useful defaults; an omitted first index defaults to zero, an
|
|
|
|
omitted second index defaults to the size of the string being sliced. ::
|
|
|
|
|
|
|
|
>>> word[:2] # The first two characters
|
|
|
|
'He'
|
|
|
|
>>> word[2:] # Everything except the first two characters
|
|
|
|
'lpA'
|
|
|
|
|
2008-09-13 14:18:11 -03:00
|
|
|
Unlike a C string, Python strings cannot be changed. Assigning to an indexed
|
2007-08-15 11:28:01 -03:00
|
|
|
position in the string results in an error::
|
|
|
|
|
|
|
|
>>> word[0] = 'x'
|
|
|
|
Traceback (most recent call last):
|
|
|
|
File "<stdin>", line 1, in ?
|
Merged revisions 72319-72320,72467,72661,72675-72679,72703,72708,72710,72712,72801-72802,72820,72822,72824,72826-72828,72830 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r72319 | georg.brandl | 2009-05-05 10:28:49 +0200 (Di, 05 Mai 2009) | 1 line
#1309567: fix linecache behavior of stripping subdirectories from paths when looking for relative filename matches. Also add a linecache test suite.
........
r72320 | georg.brandl | 2009-05-05 10:30:28 +0200 (Di, 05 Mai 2009) | 1 line
Add a news entry for r72319.
........
r72467 | georg.brandl | 2009-05-08 14:17:34 +0200 (Fr, 08 Mai 2009) | 1 line
Fix name.
........
r72661 | georg.brandl | 2009-05-15 10:03:03 +0200 (Fr, 15 Mai 2009) | 1 line
Fix example output for doctest-like demos.
........
r72675 | georg.brandl | 2009-05-16 13:13:21 +0200 (Sa, 16 Mai 2009) | 1 line
#6034: clarify __reversed__ doc.
........
r72676 | georg.brandl | 2009-05-16 13:14:46 +0200 (Sa, 16 Mai 2009) | 1 line
#6025: fix signature of parse().
........
r72677 | georg.brandl | 2009-05-16 13:18:55 +0200 (Sa, 16 Mai 2009) | 1 line
#6009: undocument default argument of Option as deprecated.
........
r72678 | georg.brandl | 2009-05-16 13:21:29 +0200 (Sa, 16 Mai 2009) | 1 line
#2856: document 2.x os.listdir() behavior for undecodable filenames.
........
r72679 | georg.brandl | 2009-05-16 13:24:41 +0200 (Sa, 16 Mai 2009) | 1 line
Fix about and bugs pages to match real workflow.
........
r72703 | georg.brandl | 2009-05-17 10:10:27 +0200 (So, 17 Mai 2009) | 1 line
part of #4144: fix exception message in console session.
........
r72708 | georg.brandl | 2009-05-17 10:24:29 +0200 (So, 17 Mai 2009) | 1 line
#6017: better document behavior of dictiterators when the dict is changed.
........
r72710 | georg.brandl | 2009-05-17 10:36:04 +0200 (So, 17 Mai 2009) | 1 line
#5942: Copy over flag table from dbm.rst which is clearer.
........
r72712 | georg.brandl | 2009-05-17 10:55:00 +0200 (So, 17 Mai 2009) | 1 line
#5935: mention that BROWSER is looked for in PATH.
........
r72801 | georg.brandl | 2009-05-20 20:31:14 +0200 (Mi, 20 Mai 2009) | 1 line
#6055: refer to "sqlite3" consistently.
........
r72802 | georg.brandl | 2009-05-20 20:35:27 +0200 (Mi, 20 Mai 2009) | 1 line
#6051: refer to email examples for better way to construct email messages.
........
r72820 | georg.brandl | 2009-05-22 09:23:32 +0200 (Fr, 22 Mai 2009) | 1 line
Use raise X(y).
........
r72822 | georg.brandl | 2009-05-22 11:33:25 +0200 (Fr, 22 Mai 2009) | 1 line
#6084: fix example.
........
r72824 | georg.brandl | 2009-05-22 11:43:17 +0200 (Fr, 22 Mai 2009) | 1 line
Fix references to file-related functions and methods (os.* vs file.*).
........
r72826 | georg.brandl | 2009-05-22 11:49:42 +0200 (Fr, 22 Mai 2009) | 1 line
Fix confusing wording.
........
r72827 | georg.brandl | 2009-05-22 11:50:30 +0200 (Fr, 22 Mai 2009) | 1 line
s/use/call/
........
r72828 | georg.brandl | 2009-05-22 11:58:48 +0200 (Fr, 22 Mai 2009) | 1 line
Correction in softspace behavior description.
........
r72830 | georg.brandl | 2009-05-22 12:40:00 +0200 (Fr, 22 Mai 2009) | 1 line
#6086: fix spelling and use a better exception to catch.
........
2009-05-26 06:04:23 -03:00
|
|
|
TypeError: object does not support item assignment
|
2007-08-15 11:28:01 -03:00
|
|
|
>>> word[:1] = 'Splat'
|
|
|
|
Traceback (most recent call last):
|
|
|
|
File "<stdin>", line 1, in ?
|
Merged revisions 72319-72320,72467,72661,72675-72679,72703,72708,72710,72712,72801-72802,72820,72822,72824,72826-72828,72830 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r72319 | georg.brandl | 2009-05-05 10:28:49 +0200 (Di, 05 Mai 2009) | 1 line
#1309567: fix linecache behavior of stripping subdirectories from paths when looking for relative filename matches. Also add a linecache test suite.
........
r72320 | georg.brandl | 2009-05-05 10:30:28 +0200 (Di, 05 Mai 2009) | 1 line
Add a news entry for r72319.
........
r72467 | georg.brandl | 2009-05-08 14:17:34 +0200 (Fr, 08 Mai 2009) | 1 line
Fix name.
........
r72661 | georg.brandl | 2009-05-15 10:03:03 +0200 (Fr, 15 Mai 2009) | 1 line
Fix example output for doctest-like demos.
........
r72675 | georg.brandl | 2009-05-16 13:13:21 +0200 (Sa, 16 Mai 2009) | 1 line
#6034: clarify __reversed__ doc.
........
r72676 | georg.brandl | 2009-05-16 13:14:46 +0200 (Sa, 16 Mai 2009) | 1 line
#6025: fix signature of parse().
........
r72677 | georg.brandl | 2009-05-16 13:18:55 +0200 (Sa, 16 Mai 2009) | 1 line
#6009: undocument default argument of Option as deprecated.
........
r72678 | georg.brandl | 2009-05-16 13:21:29 +0200 (Sa, 16 Mai 2009) | 1 line
#2856: document 2.x os.listdir() behavior for undecodable filenames.
........
r72679 | georg.brandl | 2009-05-16 13:24:41 +0200 (Sa, 16 Mai 2009) | 1 line
Fix about and bugs pages to match real workflow.
........
r72703 | georg.brandl | 2009-05-17 10:10:27 +0200 (So, 17 Mai 2009) | 1 line
part of #4144: fix exception message in console session.
........
r72708 | georg.brandl | 2009-05-17 10:24:29 +0200 (So, 17 Mai 2009) | 1 line
#6017: better document behavior of dictiterators when the dict is changed.
........
r72710 | georg.brandl | 2009-05-17 10:36:04 +0200 (So, 17 Mai 2009) | 1 line
#5942: Copy over flag table from dbm.rst which is clearer.
........
r72712 | georg.brandl | 2009-05-17 10:55:00 +0200 (So, 17 Mai 2009) | 1 line
#5935: mention that BROWSER is looked for in PATH.
........
r72801 | georg.brandl | 2009-05-20 20:31:14 +0200 (Mi, 20 Mai 2009) | 1 line
#6055: refer to "sqlite3" consistently.
........
r72802 | georg.brandl | 2009-05-20 20:35:27 +0200 (Mi, 20 Mai 2009) | 1 line
#6051: refer to email examples for better way to construct email messages.
........
r72820 | georg.brandl | 2009-05-22 09:23:32 +0200 (Fr, 22 Mai 2009) | 1 line
Use raise X(y).
........
r72822 | georg.brandl | 2009-05-22 11:33:25 +0200 (Fr, 22 Mai 2009) | 1 line
#6084: fix example.
........
r72824 | georg.brandl | 2009-05-22 11:43:17 +0200 (Fr, 22 Mai 2009) | 1 line
Fix references to file-related functions and methods (os.* vs file.*).
........
r72826 | georg.brandl | 2009-05-22 11:49:42 +0200 (Fr, 22 Mai 2009) | 1 line
Fix confusing wording.
........
r72827 | georg.brandl | 2009-05-22 11:50:30 +0200 (Fr, 22 Mai 2009) | 1 line
s/use/call/
........
r72828 | georg.brandl | 2009-05-22 11:58:48 +0200 (Fr, 22 Mai 2009) | 1 line
Correction in softspace behavior description.
........
r72830 | georg.brandl | 2009-05-22 12:40:00 +0200 (Fr, 22 Mai 2009) | 1 line
#6086: fix spelling and use a better exception to catch.
........
2009-05-26 06:04:23 -03:00
|
|
|
TypeError: object does not support slice assignment
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
However, creating a new string with the combined content is easy and efficient::
|
|
|
|
|
|
|
|
>>> 'x' + word[1:]
|
|
|
|
'xelpA'
|
|
|
|
>>> 'Splat' + word[4]
|
|
|
|
'SplatA'
|
|
|
|
|
|
|
|
Here's a useful invariant of slice operations: ``s[:i] + s[i:]`` equals ``s``.
|
|
|
|
::
|
|
|
|
|
|
|
|
>>> word[:2] + word[2:]
|
|
|
|
'HelpA'
|
|
|
|
>>> word[:3] + word[3:]
|
|
|
|
'HelpA'
|
|
|
|
|
|
|
|
Degenerate slice indices are handled gracefully: an index that is too large is
|
|
|
|
replaced by the string size, an upper bound smaller than the lower bound returns
|
|
|
|
an empty string. ::
|
|
|
|
|
|
|
|
>>> word[1:100]
|
|
|
|
'elpA'
|
|
|
|
>>> word[10:]
|
|
|
|
''
|
|
|
|
>>> word[2:1]
|
|
|
|
''
|
|
|
|
|
|
|
|
Indices may be negative numbers, to start counting from the right. For example::
|
|
|
|
|
|
|
|
>>> word[-1] # The last character
|
|
|
|
'A'
|
|
|
|
>>> word[-2] # The last-but-one character
|
|
|
|
'p'
|
|
|
|
>>> word[-2:] # The last two characters
|
|
|
|
'pA'
|
|
|
|
>>> word[:-2] # Everything except the last two characters
|
|
|
|
'Hel'
|
|
|
|
|
|
|
|
But note that -0 is really the same as 0, so it does not count from the right!
|
|
|
|
::
|
|
|
|
|
|
|
|
>>> word[-0] # (since -0 equals 0)
|
|
|
|
'H'
|
|
|
|
|
|
|
|
Out-of-range negative slice indices are truncated, but don't try this for
|
|
|
|
single-element (non-slice) indices::
|
|
|
|
|
|
|
|
>>> word[-100:]
|
|
|
|
'HelpA'
|
|
|
|
>>> word[-10] # error
|
|
|
|
Traceback (most recent call last):
|
|
|
|
File "<stdin>", line 1, in ?
|
|
|
|
IndexError: string index out of range
|
|
|
|
|
|
|
|
One way to remember how slices work is to think of the indices as pointing
|
|
|
|
*between* characters, with the left edge of the first character numbered 0.
|
|
|
|
Then the right edge of the last character of a string of *n* characters has
|
|
|
|
index *n*, for example::
|
|
|
|
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
+---+---+---+---+---+
|
2007-08-15 11:28:01 -03:00
|
|
|
| H | e | l | p | A |
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
+---+---+---+---+---+
|
|
|
|
0 1 2 3 4 5
|
2007-08-15 11:28:01 -03:00
|
|
|
-5 -4 -3 -2 -1
|
|
|
|
|
|
|
|
The first row of numbers gives the position of the indices 0...5 in the string;
|
|
|
|
the second row gives the corresponding negative indices. The slice from *i* to
|
|
|
|
*j* consists of all characters between the edges labeled *i* and *j*,
|
|
|
|
respectively.
|
|
|
|
|
|
|
|
For non-negative indices, the length of a slice is the difference of the
|
|
|
|
indices, if both are within bounds. For example, the length of ``word[1:3]`` is
|
|
|
|
2.
|
|
|
|
|
|
|
|
The built-in function :func:`len` returns the length of a string::
|
|
|
|
|
|
|
|
>>> s = 'supercalifragilisticexpialidocious'
|
|
|
|
>>> len(s)
|
|
|
|
34
|
|
|
|
|
|
|
|
|
|
|
|
.. seealso::
|
|
|
|
|
|
|
|
:ref:`typesseq`
|
|
|
|
Strings, and the Unicode strings described in the next section, are
|
|
|
|
examples of *sequence types*, and support the common operations supported
|
|
|
|
by such types.
|
|
|
|
|
|
|
|
:ref:`string-methods`
|
|
|
|
Both strings and Unicode strings support a large number of methods for
|
|
|
|
basic transformations and searching.
|
|
|
|
|
2008-05-25 21:54:22 -03:00
|
|
|
:ref:`new-string-formatting`
|
|
|
|
Information about string formatting with :meth:`str.format` is described
|
|
|
|
here.
|
|
|
|
|
2007-08-15 11:28:01 -03:00
|
|
|
:ref:`string-formatting`
|
2008-05-25 21:54:22 -03:00
|
|
|
The old formatting operations invoked when strings and Unicode strings are
|
|
|
|
the left operand of the ``%`` operator are described in more detail here.
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
|
|
|
|
.. _tut-unicodestrings:
|
|
|
|
|
|
|
|
Unicode Strings
|
|
|
|
---------------
|
|
|
|
|
|
|
|
.. sectionauthor:: Marc-Andre Lemburg <mal@lemburg.com>
|
|
|
|
|
|
|
|
|
|
|
|
Starting with Python 2.0 a new data type for storing text data is available to
|
|
|
|
the programmer: the Unicode object. It can be used to store and manipulate
|
|
|
|
Unicode data (see http://www.unicode.org/) and integrates well with the existing
|
|
|
|
string objects, providing auto-conversions where necessary.
|
|
|
|
|
|
|
|
Unicode has the advantage of providing one ordinal for every character in every
|
|
|
|
script used in modern and ancient texts. Previously, there were only 256
|
|
|
|
possible ordinals for script characters. Texts were typically bound to a code
|
|
|
|
page which mapped the ordinals to script characters. This lead to very much
|
|
|
|
confusion especially with respect to internationalization (usually written as
|
|
|
|
``i18n`` --- ``'i'`` + 18 characters + ``'n'``) of software. Unicode solves
|
|
|
|
these problems by defining one code page for all scripts.
|
|
|
|
|
|
|
|
Creating Unicode strings in Python is just as simple as creating normal
|
|
|
|
strings::
|
|
|
|
|
|
|
|
>>> u'Hello World !'
|
|
|
|
u'Hello World !'
|
|
|
|
|
|
|
|
The small ``'u'`` in front of the quote indicates that a Unicode string is
|
|
|
|
supposed to be created. If you want to include special characters in the string,
|
|
|
|
you can do so by using the Python *Unicode-Escape* encoding. The following
|
|
|
|
example shows how::
|
|
|
|
|
|
|
|
>>> u'Hello\u0020World !'
|
|
|
|
u'Hello World !'
|
|
|
|
|
|
|
|
The escape sequence ``\u0020`` indicates to insert the Unicode character with
|
|
|
|
the ordinal value 0x0020 (the space character) at the given position.
|
|
|
|
|
|
|
|
Other characters are interpreted by using their respective ordinal values
|
|
|
|
directly as Unicode ordinals. If you have literal strings in the standard
|
|
|
|
Latin-1 encoding that is used in many Western countries, you will find it
|
|
|
|
convenient that the lower 256 characters of Unicode are the same as the 256
|
|
|
|
characters of Latin-1.
|
|
|
|
|
|
|
|
For experts, there is also a raw mode just like the one for normal strings. You
|
|
|
|
have to prefix the opening quote with 'ur' to have Python use the
|
|
|
|
*Raw-Unicode-Escape* encoding. It will only apply the above ``\uXXXX``
|
|
|
|
conversion if there is an uneven number of backslashes in front of the small
|
|
|
|
'u'. ::
|
|
|
|
|
|
|
|
>>> ur'Hello\u0020World !'
|
|
|
|
u'Hello World !'
|
|
|
|
>>> ur'Hello\\u0020World !'
|
|
|
|
u'Hello\\\\u0020World !'
|
|
|
|
|
|
|
|
The raw mode is most useful when you have to enter lots of backslashes, as can
|
|
|
|
be necessary in regular expressions.
|
|
|
|
|
|
|
|
Apart from these standard encodings, Python provides a whole set of other ways
|
|
|
|
of creating Unicode strings on the basis of a known encoding.
|
|
|
|
|
|
|
|
.. index:: builtin: unicode
|
|
|
|
|
|
|
|
The built-in function :func:`unicode` provides access to all registered Unicode
|
|
|
|
codecs (COders and DECoders). Some of the more well known encodings which these
|
|
|
|
codecs can convert are *Latin-1*, *ASCII*, *UTF-8*, and *UTF-16*. The latter two
|
|
|
|
are variable-length encodings that store each Unicode character in one or more
|
|
|
|
bytes. The default encoding is normally set to ASCII, which passes through
|
|
|
|
characters in the range 0 to 127 and rejects any other characters with an error.
|
|
|
|
When a Unicode string is printed, written to a file, or converted with
|
|
|
|
:func:`str`, conversion takes place using this default encoding. ::
|
|
|
|
|
|
|
|
>>> u"abc"
|
|
|
|
u'abc'
|
|
|
|
>>> str(u"abc")
|
|
|
|
'abc'
|
|
|
|
>>> u"äöü"
|
|
|
|
u'\xe4\xf6\xfc'
|
|
|
|
>>> str(u"äöü")
|
|
|
|
Traceback (most recent call last):
|
|
|
|
File "<stdin>", line 1, in ?
|
|
|
|
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
|
|
|
|
|
|
|
|
To convert a Unicode string into an 8-bit string using a specific encoding,
|
|
|
|
Unicode objects provide an :func:`encode` method that takes one argument, the
|
|
|
|
name of the encoding. Lowercase names for encodings are preferred. ::
|
|
|
|
|
|
|
|
>>> u"äöü".encode('utf-8')
|
|
|
|
'\xc3\xa4\xc3\xb6\xc3\xbc'
|
|
|
|
|
|
|
|
If you have data in a specific encoding and want to produce a corresponding
|
|
|
|
Unicode string from it, you can use the :func:`unicode` function with the
|
|
|
|
encoding name as the second argument. ::
|
|
|
|
|
|
|
|
>>> unicode('\xc3\xa4\xc3\xb6\xc3\xbc', 'utf-8')
|
|
|
|
u'\xe4\xf6\xfc'
|
|
|
|
|
|
|
|
|
|
|
|
.. _tut-lists:
|
|
|
|
|
|
|
|
Lists
|
|
|
|
-----
|
|
|
|
|
|
|
|
Python knows a number of *compound* data types, used to group together other
|
|
|
|
values. The most versatile is the *list*, which can be written as a list of
|
|
|
|
comma-separated values (items) between square brackets. List items need not all
|
|
|
|
have the same type. ::
|
|
|
|
|
|
|
|
>>> a = ['spam', 'eggs', 100, 1234]
|
|
|
|
>>> a
|
|
|
|
['spam', 'eggs', 100, 1234]
|
|
|
|
|
|
|
|
Like string indices, list indices start at 0, and lists can be sliced,
|
|
|
|
concatenated and so on::
|
|
|
|
|
|
|
|
>>> a[0]
|
|
|
|
'spam'
|
|
|
|
>>> a[3]
|
|
|
|
1234
|
|
|
|
>>> a[-2]
|
|
|
|
100
|
|
|
|
>>> a[1:-1]
|
|
|
|
['eggs', 100]
|
|
|
|
>>> a[:2] + ['bacon', 2*2]
|
|
|
|
['spam', 'eggs', 'bacon', 4]
|
|
|
|
>>> 3*a[:3] + ['Boo!']
|
|
|
|
['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs', 100, 'Boo!']
|
|
|
|
|
|
|
|
Unlike strings, which are *immutable*, it is possible to change individual
|
|
|
|
elements of a list::
|
|
|
|
|
|
|
|
>>> a
|
|
|
|
['spam', 'eggs', 100, 1234]
|
|
|
|
>>> a[2] = a[2] + 23
|
|
|
|
>>> a
|
|
|
|
['spam', 'eggs', 123, 1234]
|
|
|
|
|
|
|
|
Assignment to slices is also possible, and this can even change the size of the
|
|
|
|
list or clear it entirely::
|
|
|
|
|
|
|
|
>>> # Replace some items:
|
|
|
|
... a[0:2] = [1, 12]
|
|
|
|
>>> a
|
|
|
|
[1, 12, 123, 1234]
|
|
|
|
>>> # Remove some:
|
|
|
|
... a[0:2] = []
|
|
|
|
>>> a
|
|
|
|
[123, 1234]
|
|
|
|
>>> # Insert some:
|
|
|
|
... a[1:1] = ['bletch', 'xyzzy']
|
|
|
|
>>> a
|
|
|
|
[123, 'bletch', 'xyzzy', 1234]
|
|
|
|
>>> # Insert (a copy of) itself at the beginning
|
|
|
|
>>> a[:0] = a
|
|
|
|
>>> a
|
|
|
|
[123, 'bletch', 'xyzzy', 1234, 123, 'bletch', 'xyzzy', 1234]
|
|
|
|
>>> # Clear the list: replace all items with an empty list
|
|
|
|
>>> a[:] = []
|
|
|
|
>>> a
|
|
|
|
[]
|
|
|
|
|
|
|
|
The built-in function :func:`len` also applies to lists::
|
|
|
|
|
2007-11-09 09:08:48 -04:00
|
|
|
>>> a = ['a', 'b', 'c', 'd']
|
2007-08-15 11:28:01 -03:00
|
|
|
>>> len(a)
|
2007-11-09 09:08:48 -04:00
|
|
|
4
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
It is possible to nest lists (create lists containing other lists), for
|
|
|
|
example::
|
|
|
|
|
|
|
|
>>> q = [2, 3]
|
|
|
|
>>> p = [1, q, 4]
|
|
|
|
>>> len(p)
|
|
|
|
3
|
|
|
|
>>> p[1]
|
|
|
|
[2, 3]
|
|
|
|
>>> p[1][0]
|
|
|
|
2
|
|
|
|
>>> p[1].append('xtra') # See section 5.1
|
|
|
|
>>> p
|
|
|
|
[1, [2, 3, 'xtra'], 4]
|
|
|
|
>>> q
|
|
|
|
[2, 3, 'xtra']
|
|
|
|
|
|
|
|
Note that in the last example, ``p[1]`` and ``q`` really refer to the same
|
|
|
|
object! We'll come back to *object semantics* later.
|
|
|
|
|
|
|
|
|
|
|
|
.. _tut-firststeps:
|
|
|
|
|
|
|
|
First Steps Towards Programming
|
|
|
|
===============================
|
|
|
|
|
|
|
|
Of course, we can use Python for more complicated tasks than adding two and two
|
|
|
|
together. For instance, we can write an initial sub-sequence of the *Fibonacci*
|
|
|
|
series as follows::
|
|
|
|
|
|
|
|
>>> # Fibonacci series:
|
|
|
|
... # the sum of two elements defines the next
|
|
|
|
... a, b = 0, 1
|
|
|
|
>>> while b < 10:
|
2008-01-06 18:05:40 -04:00
|
|
|
... print b
|
|
|
|
... a, b = b, a+b
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
...
|
2007-08-15 11:28:01 -03:00
|
|
|
1
|
|
|
|
1
|
|
|
|
2
|
|
|
|
3
|
|
|
|
5
|
|
|
|
8
|
|
|
|
|
|
|
|
This example introduces several new features.
|
|
|
|
|
|
|
|
* The first line contains a *multiple assignment*: the variables ``a`` and ``b``
|
|
|
|
simultaneously get the new values 0 and 1. On the last line this is used again,
|
|
|
|
demonstrating that the expressions on the right-hand side are all evaluated
|
|
|
|
first before any of the assignments take place. The right-hand side expressions
|
|
|
|
are evaluated from the left to the right.
|
|
|
|
|
|
|
|
* The :keyword:`while` loop executes as long as the condition (here: ``b < 10``)
|
|
|
|
remains true. In Python, like in C, any non-zero integer value is true; zero is
|
|
|
|
false. The condition may also be a string or list value, in fact any sequence;
|
|
|
|
anything with a non-zero length is true, empty sequences are false. The test
|
|
|
|
used in the example is a simple comparison. The standard comparison operators
|
|
|
|
are written the same as in C: ``<`` (less than), ``>`` (greater than), ``==``
|
|
|
|
(equal to), ``<=`` (less than or equal to), ``>=`` (greater than or equal to)
|
|
|
|
and ``!=`` (not equal to).
|
|
|
|
|
|
|
|
* The *body* of the loop is *indented*: indentation is Python's way of grouping
|
|
|
|
statements. Python does not (yet!) provide an intelligent input line editing
|
|
|
|
facility, so you have to type a tab or space(s) for each indented line. In
|
|
|
|
practice you will prepare more complicated input for Python with a text editor;
|
|
|
|
most text editors have an auto-indent facility. When a compound statement is
|
|
|
|
entered interactively, it must be followed by a blank line to indicate
|
|
|
|
completion (since the parser cannot guess when you have typed the last line).
|
|
|
|
Note that each line within a basic block must be indented by the same amount.
|
|
|
|
|
|
|
|
* The :keyword:`print` statement writes the value of the expression(s) it is
|
|
|
|
given. It differs from just writing the expression you want to write (as we did
|
|
|
|
earlier in the calculator examples) in the way it handles multiple expressions
|
|
|
|
and strings. Strings are printed without quotes, and a space is inserted
|
|
|
|
between items, so you can format things nicely, like this::
|
|
|
|
|
|
|
|
>>> i = 256*256
|
|
|
|
>>> print 'The value of i is', i
|
|
|
|
The value of i is 65536
|
|
|
|
|
|
|
|
A trailing comma avoids the newline after the output::
|
|
|
|
|
|
|
|
>>> a, b = 0, 1
|
|
|
|
>>> while b < 1000:
|
|
|
|
... print b,
|
|
|
|
... a, b = b, a+b
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
...
|
2007-08-15 11:28:01 -03:00
|
|
|
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
|
|
|
|
|
|
|
|
Note that the interpreter inserts a newline before it prints the next prompt if
|
|
|
|
the last line was not completed.
|