Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
wiki2:python:code_notes [2017/02/13 15:46] alfred |
wiki2:python:code_notes [2020/06/20 10:02] (actual) |
||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Python code notes ====== | + | ====== Python snippets ====== |
| ===== Getters & setters ===== | ===== Getters & setters ===== | ||
| <code python> | <code python> | ||
| Línea 45: | Línea 45: | ||
| if any((x, y, z)): | if any((x, y, z)): | ||
| print('passed') | print('passed') | ||
| + | </code> | ||
| + | |||
| + | ===== Conditional tricks (Short circuit) ===== | ||
| + | You can use the conditional operators ''and'' and ''or'' for deciding how to execute code. Next piece won't print ''hola''. | ||
| + | <code> | ||
| + | def foo(): | ||
| + | print('hola') | ||
| + | | ||
| + | False and foo() | ||
| + | </code> | ||
| + | |||
| + | ===== See the low level actions ===== | ||
| + | |||
| + | We can see the low level actions of a function with the ''dis'' package: | ||
| + | |||
| + | <code python> | ||
| + | >>> def func(a): | ||
| + | ... a += 10 | ||
| + | ... return a | ||
| + | ... | ||
| + | >>> import dis | ||
| + | >>> dis.dis(func) | ||
| + | 2 0 LOAD_FAST 0 (a) | ||
| + | 3 LOAD_CONST 1 (10) | ||
| + | 6 INPLACE_ADD | ||
| + | 7 STORE_FAST 0 (a) | ||
| + | |||
| + | 3 10 LOAD_FAST 0 (a) | ||
| + | 13 RETURN_VALUE | ||
| </code> | </code> | ||