我常用到的python库
Python 的一大特色是其丰富的模块,基本上只要你能想到的常见开发需求,都能找到别人已经实现的库直接使用,或者相关的工具/框架来辅助实现。但这对于新手来说也是一个问题:这么多库,我要从哪里学起?怎么才能记住这么多库的用法?
对此我的建议:
- 不要把学习库作为目标。正确的学习逻辑是,去发掘可编程解决的需求,以实现功能为目标,在开发过程中去搜索去学习相关的库。否则你会陷在茫茫模块之中失去方向。
- 不用去死记库的用法,你也不可能记下来。你需要了解的是查找和阅读文档的方法,以及常见的开发模式。所谓开发经验,并不是你记住的内容,而是你掌握的方法。
我们编程教室在过去发表过数十个开发案例,这些案例主要用到哪些库呢?今天就来统计一下,顺便给大家整理及推荐常用的一些库。
之前有下载过文章相关代码的同学应该知道我们这个 snippet 的代码仓库,我们大部分的案例项目都在其中。下面就以这个库中的代码为参考进行统计。
统计代码:
import os
from collections import Counter
modules = set()
all_modules = {}
for root, dirs, files in os.walk("..", topdown=False):
for name in files:
if name.endswith('.py'):
with open(root + os.path.sep + name) as f:
for line in f:
line = line.lstrip()
if line.startswith('from') or line.startswith('import'):
module = line.split()[1]
module = module.split('.')[] if module:
modules.add(module)
if root.count(os.path.sep) <= 1:
for m in modules:
all_modules[m] = all_modules.get(m, ) + 1
modules = set()
print(Counter(all_modules).most_common())
相关文章