Category:Python: Difference between revisions
Content added Content deleted
(bnf param) |
(Add notes on deviations from idiomatic Python to support 2.X and 3.X.) |
||
Line 12: | Line 12: | ||
It is easy to create clean bug-free programs in Python due to the motto: "Errors should never pass silently." Python is an [[wp:Interpreter (computing)|interpreter]]. Python source files (.py files) are typically compiled to an intermediate [[bytecode]] language (.pyc files) and executed by a Python Virtual Machine. |
It is easy to create clean bug-free programs in Python due to the motto: "Errors should never pass silently." Python is an [[wp:Interpreter (computing)|interpreter]]. Python source files (.py files) are typically compiled to an intermediate [[bytecode]] language (.pyc files) and executed by a Python Virtual Machine. |
||
===Notes=== |
|||
Because Python uses whitespace for structure, do not format long code examples with leading whitespace, instead use <code><nowiki><pre></pre></nowiki></code> tags, or, preferably, <code><nowiki><lang python></lang></nowiki></code> tags. This will make it easier to copy code into and out of the wiki. Example: |
|||
<lang python>print 'this line must not have leading indentation!' |
:<lang python>print 'this line must not have leading indentation!' |
||
if True: |
if True: |
||
print 'example: ', foo(3), len(bar)</lang> |
print 'example: ', foo(3), len(bar)</lang> |
||
Some Python examples may deviate from idiomatic Python because they may be written to work in Python 3.X as well as Python 2.X environments. This includes doing things like: |
|||
* Using brackets in print statements/functions of one expression. |
|||
* Using zip and not izip; keys(), values(), items() and not their iter- forms. |
|||
* Checking for raw_input and setting raw_input to input if not found. |
|||
* Conditionally importing reduce if it is not found. |
|||
This style is not a requirement for Python code on RC, but it may be in use and should not necessarily be 'corrected' if found in examples. |
|||
==See Also== |
==See Also== |