Python 3.11.2 (tags/v3.11.2:878ead1, Feb 7 2023, 16:38:35) [MSC v.1934 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
DreamPie 1.2.1
>>> def přičti(kolik):
...
... def vnitřní_fce(k_čemu):
... return kolik + k_čemu
...
... return vnitřní_fce
>>> přičti_5 = přičti(5)
>>> přičti_5
0: <function přičti.<locals>.vnitřní_fce at 0x0000018BF9EDF740>
>>> přičti_5(3)
1: 8
>>> přičti_3 = přičti(3)
>>> přičti_3
2: <function přičti.<locals>.vnitřní_fce at 0x0000018BF9EDF6A0>
>>> přičti_3(3)
3: 6
>>> přičti(7)(3)
4: 10
>>> def mymap(xs, fn=lambda x: x):
... return [fn(x) for x in xs]
>>> mymap(['a', 'b', 'c'], lambda x: chr(ord(x)+3) )
5: ['d', 'e', 'f']
>>> mymap(['w', 'x', 'y'], lambda x: chr(ord(x)+3) )
6: ['z', '{', '|']
>>> ord('z') - ord('z')
7: 0
>>> ord('z') - ord('a')
8: 25
>>> ord('z')
9: 122
>>> ord('a')
10: 97
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 + 97 ) )
11: ['a', 'b', 'c']
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 + 96 ) )
12: ['`', 'a', 'b']
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 + 98 ) )
13: ['b', 'c', 'd']
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 123 + 97 ) )
14: ['Û', 'a', 'b']
>>> ord('w')
15: 119
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 - 97 ) )
Traceback (most recent call last):
File "<pyshell#20>", line 1, in <module>
mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 - 97 ) )
File "<pyshell#8>", line 2, in mymap
return [fn(x) for x in xs]
^^^^^^^^^^^^^^^^^^^
File "<pyshell#8>", line 2, in <listcomp>
return [fn(x) for x in xs]
^^^^^
File "<pyshell#20>", line 1, in <lambda>
mymap(['w', 'x', 'y'], lambda x: chr( (ord(x)+3) % 122 - 97 ) )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: chr() arg not in range(0x110000)
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x) + 3 + ord('a')) % 26 + ord('a') ) )
16: ['l', 'm', 'n']
>>> mymap(['w', 'x', 'y'], lambda x: chr( (ord(x) + 3 - ord('a')) % 26 + ord('a') ) )
17: ['z', 'a', 'b']
>>> def moje_funkce():
... print('moje funkce')
>>> moje_funkce()
moje funkce
>>> def dekorátor(funkce):
... def _dekorátor():
... print('START')
... return funkce()
... return _dekorátor
>>> moje_funkce = dekorátor(moje_funkce)
>>> moje_funkce
18: <function dekorátor.<locals>._dekorátor at 0x0000018BF9EDFB00>
>>> moje_funkce()
START
moje funkce
>>> import inspect
>>> inspect.getfullargspec(moje_funkce)
19: FullArgSpec(args=[], varargs=None, varkw=None, defaults=None, kwonlyargs=[], kwonlydefaults=None, annotations={})
>>> inspect.getfullargspec(moje_funkce)[0]
20: []
>>> inspect.getfullargspec(moje_funkce).args
21: []
>>> def moje_funkce(a, b, c):
... print('moje funkce', a, b, c, sep='|')
>>> moje_funkce
22: <function moje_funkce at 0x0000018BF9EDFD80>
>>> moje_funkce(1, 2, 3)
moje funkce|1|2|3
>>> inspect.getfullargspec(moje_funkce).args
23: ['a', 'b', 'c']
>>> moje_funkce.__annotations__
24: {}
>>> def moje_funkce(a: int, b: 'Ahoj!', c: (666, 'xxx')) -> 'Baf!':
... print('moje funkce', a, b, c, sep='|')
>>> inspect.getfullargspec(moje_funkce).args
25: ['a', 'b', 'c']
>>> moje_funkce.__annotations__
26: {'a': <class 'int'>, 'b': 'Ahoj!', 'c': (666, 'xxx'), 'return': 'Baf!'}
>>>