Difference between revisions of "Python:Control structures"
Jump to navigation
Jump to search
Line 45: | Line 45: | ||
blockifNOexceptionisthrown | blockifNOexceptionisthrown | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | NOTE: elif is not allowed here. | ||
− | Specifying an exception is optional but highly recommended. The | + | Specifying an exception is optional but highly recommended (Easier to ask for forgiveness than permission aka EAFP) and it is said to be faster. However, take care you don't forgive real faults. |
+ | |||
+ | The exception-types can be found in the [https://docs.python.org/3/library/exceptions.html#exception-hierarchy python docs] | ||
;except NameError | ;except NameError |
Revision as of 11:06, 26 January 2022
Most flow control is standard. Indentation defines the code block to execute. You must be strict, all indents must be the same in a block, a mix of spaces and tabs is not allowed (unless each line uses the same mix).
You can define you own Python:Functions too.
if expression:
block
elif expression:
block
else:
otherblock
for var1 in itterable: # keys if itterable is a dict
block
if somethinghappens:
break
while expression:
block
if somethinghappens:
continue
break
- Stop looping immediately. Jump to the next statement after the loop.
continue
- Stop the current iteration immediately and jump the the top of the loop, do the next iteration.
pass
- No operation, use e.g. to avoid negative tests
var1 = ( x if <condition> else y )
- No operation, use e.g. to avoid negative tests
Exception handling
To catch exceptions:
try:
blockthatmaythowexception
except <exception>:
blockifexceptionisthrown
else:
blockifNOexceptionisthrown
NOTE: elif is not allowed here.
Specifying an exception is optional but highly recommended (Easier to ask for forgiveness than permission aka EAFP) and it is said to be faster. However, take care you don't forgive real faults.
The exception-types can be found in the python docs
- except NameError
- The variable does not exist
- except KeyError
- The key does not exist in the dict
- except IndexError
- The index does not exist in the list