怎么知道python有哪些库、哪些方法-哪些 Python 库让你相见恨晚?

/>

Python 库实在是太多了,已经多到不管是谁都不可能知道全部的 Python 库。这里面有很多库大家一定耳熟能详,比如 Pandas,Scikit-learn 和 Numpy,但是也有些库大家可能错过了,虽然它们有些老旧,但是同样非常有用。

我们今天就分享一些比较小众的 Python 库,建议 Python 老手也可以看一看,里面可能有那么一两个库你也没有见过。(库都送到嘴边了请你一定要尝尝

/>

Delorean

Delorean 是一个很酷炫的日期时间库,是 Python 中用着最顺畅的日期时间库之一。它有点像 JavaScript 里的 moment,可以让你更简洁省心的解决 Python 中使用时间模块中遇到的问题,比如转换、操控和生成时间日期。

Delorean 这个名字也有点意思,源自科幻电影《回到未来》中那辆叫 Delorean 的梦幻鸥翼门汽车。

地址:

from delorean import Delorean

EST = "US/Eastern"

d = Delorean(timezone=EST)

Prettytable

很可能你没听过 Prettytable 这个库,因为它在 GoogleCode上···

简直就是编程圈里的西伯利亚,又偏又冷。 />

不过虽然身在犄角旮旯,Prettytable 却能帮我们在终端或浏览器上构造出很漂亮的外观。所以如果你在为 IPython Notebook 忙着找新插件,试试 Prettytable 用到你的 HTML_repr_上。

地址:

Wget

是不是有时候因为工作需要,自己要闷头写网络爬虫?有个叫 Wget 的库就是个很好的爬虫工具。想递归下载一个网站?爬取页面的所有图片?想避开 cookie 追踪?没问题,全都可以。

甚至在电影《社交网络》里连马克·扎克伯格都说:

首先是 Kirkland,它们开放了所有的东西,允许在他们的 Apache 配置上索引内容。所以用点 Wget 的小技巧就足够下载整个 Kirkland Facebook。小菜一碟!

Wdget 的 Python 版本非常简单易用:

import wget

wget.download("http://www.cnn.com/")

# 100% [............................................................................] 280385 / 280385

地址:

PyMC

不确定现在有多少人用 PyMC,现在 Scikit-learn 好像成了人见人爱的小天使(也确实很厉害),但是 PyMC 也值得我们的关爱。

PyMC 是一个用于贝叶斯分析的库,在很多数据科学和 Python 博客里以及卡梅隆·戴维森-皮隆的《Bayesian Methods for Hackers》里多次出现。

from pymc.examples import disaster_model

from pymc import MCMC

M = MCMC(disaster_model)

M.sample(iter=10000, burn=1000, thin=10)

[-----------------100%-----------------] 10000 of 10000 complete in 1.4 sec

地址:

Sh

不能没让你看到 Sh 这个库你就走掉了。Sh 能让你将 shell 命令以函数导入 Python 中。如果有些工作在 bash 中很简单,但你不知道怎么在 Python 中完成(比如递归搜索文件),这时 Sh 就会超级有用。

from sh import find

find("/tmp")

/tmp/foo

/tmp/foo/file1.json

/tmp/foo/file2.json

/tmp/foo/file3.json

/tmp/foo/bar/file3.json

Fuzzywuzzy

Fuzzywuzzy 是一款非常简单的 Python 库,花个两三分钟就能通读它的原理:

Fuzzywuzzy 是一款很强大的模糊字符串匹配工具,很适合用于在不同数据库中创建特征向量或匹配记录。

地址:

Progressbar

Progressbar 是 Python 中的一个文本进度条程序库,用于展示长时间运行操作的过程,从视觉上提示你程序的处理进度。

Progressbar 非常简单易用,也很强大。如果系统支持,它还能自动启用一些功能,比如自动调整。

from progressbar import ProgressBar

import time

pbar = ProgressBar(maxval=10)

for i in range(1, 11):

pbar.update(i)

time.sleep(1)

pbar.finish()

# 60% |######################################################## |

地址:

Colorama

前面说到可以让程序有很棒的进度条,干嘛不再酷炫点,比如变成彩色!这点也很实用,可以在运行出错时提醒你。借助 Colorama 就能做到,使用起来很简单。将它放入脚本中,往颜色中添加任何你想打印的文本即可:

地址:

Uuid

如果你在编程过程中需要唯一 ID,那么这个叫 UUID 的 Python 库绝对是个好工具,它实现了 1,3,4 和 5 版本的 UUID 标准,用起来很方便。

import uuid

print uuid.uuid4()

# e7bafa3d-274e-4b0a-b9cc-d898957b4b61

地址:

Bashplotlib

Bashplotlib 是一款命令行工具,用于在终端绘制基本的图形。假如你没有 GUI 的话,它能让你迅速的可视化数据。它由 Python 编写,可以用 pip 随时随地迅速安装。

$ pip install bashplotlib

$ scatter --file data/texas.txt --pch x

地址:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值