全文共字,预计学习时长11分钟
图源:UnsplashPython作为近几年超级热门的新兴编程语言,其语言功能十分强大的特点,大家有目共睹,想必不用赘述。
Python功能众多,小芯曾用Python的交互式地图和区块链等功能创建了许许多多的应用程序,令人振奋。
但也正因其功能繁多,初学者一开始是很难掌握所有功能的。
即使你是一名从其他语言(比如C语言或MATLAB语言)转换过来的程序员,用更加抽象的Python编写代码对你来说也绝对是一次不同的体验。
但功能虽多,总有主次之分。
为了方便大家早点了解Python的一些大功能,小芯特别整理出了其中5大最重要的功能。
1.生成器——内存效率
打算计算大量的结果,但同时又想避免同时分配所有结果所需内存,这时候会使用生成器。换句话说,它们即时生成值,但不会将先前生成的值存储在内存中,因此只需要将其迭代一次。
生成器常用于读取大型文件或使用关键字yield生成无穷序列。在大多数数据科学项目中,笔者发现它颇有用处。
defgen(n):#aninfinitesequencegeneratorthatgeneratesintegers=nwhileTrue:yieldnn+=1G=gen(3)#startsat3print(next(G))#3print(next(G))#4print(next(G))#5print(next(G))#6python-generatorhostedwithbyGitHub
2.虚拟环境——隔离
若读完本文,只能记住其中一条,那应该是虚拟环境的使用。
图源:UnsplashPython的应用程序经常使用很多不同的软件包,而这些软件包由具有复杂依赖关系的开发人员开发。不同的应用程序由一种特定的库设置开发出来,其结果无法由其他版本的库复制。没有一种安装程序可以满足所有应用程序的要求。
condacreate-nvenvpippython=3.7#selectpythonversionsourceactivatevenv...sourcedeactivate
因此,为每个应用程序创建单独的虚拟环境venv至关重要,可以用pip或conda完成。
3.列表推导——紧致码
很多人认为lambda、map和filter是每个初学者都应该学习的函数。虽然笔者认为这些函数值得