- Python : 3.7.3
- OS : Ubuntu 18.04.2 LTS
- IDE : pycharm-community-2019.1.3
- Conda : 4.7.5
- typesetting : Markdown
coder@ubuntu:~$ source activate py37 (py37) coder@ubuntu:~$ ipython Python 3.7.3 (default, Mar 27 2019, 22:11:17) Type 'copyright', 'credits' or 'license' for more information IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help. In [1]: a = (2 * x + 1 for x in (1, 2, 3, 4)) # 生成器。用一个生成一个,省内存空间 In [2]: next(a) Out[2]: 3 In [3]: next(a) Out[3]: 5 In [4]: next(a) Out[4]: 7 In [5]: next(a) Out[5]: 9 In [6]: next(a) --------------------------------------------------------------------------- StopIteration Traceback (most recent call last) <ipython-input-6-15841f3f11d4> in <module> ----> 1 next(a) StopIteration: In [7]: # 超过迭代范围,抛出异常 In [8]: exit (py37) coder@ubuntu:~$ conda deactivate coder@ubuntu:~$
class StopIteration(Exception): """ Signal the end from iterator.__next__(). """ def __init__(self, *args, **kwargs): # real signature unknown pass value = property(lambda self: object(), lambda self, v: None, lambda self: None) # default """generator return value"""
Python具备开源、跨平台、解释型、交互式等特性,值得学习。
Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来作一件事。
代码的书写要遵照规范,这样有助于沟通和理解。
每种语言都有独特的思想,初学者须要转变思惟、踏实践行、坚持积累。python