怎么知道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
地址:
怎么知道python有哪些库、哪些方法-哪些 Python 库让你相见恨晚?相关推荐
- python安装random库_python 库安装方法及常用库
python库安装方法: 方法一:setpu.py 1.下载库压缩包,解压,记录下路径:*:/**/--/ 2.运行cmd,切换到*:/**/--/目录下 3.运行setup.py build 4.然 ...
- python re库安装_python 库安装方法及常用库
python库安装方法: 方法一:setpu.py 1.下载库压缩包,解压,记录下路径:*:/**/--/ 2.运行cmd,切换到*:/**/--/目录下 3.运行setup.py build 4.然 ...
- python创建线程_多种方法实现 python 线程池
最近在做一个爬虫相关的项目,单线程的整站爬虫,耗时真的不是一般的巨大,运行一次也是心累,,,所以,要想实现整站爬虫,多线程是不可避免的,那么python多线程又应该怎样实现呢?这里主要要几个问题(关于 ...
- pythonrequests库使用方法_python三方库之requests-快速上手
基于2.21.0 发送请求 发送GET请求: r = requests.get('https://api.github.com/events') 发送POST请求: r = requests.post ...
- python正则化函数_正则化方法及Python实现
正则化有助于克服过度拟合模型的问题.过度拟合是偏差和方差平衡的概念.如果过度拟合,机器学习模型将具有较低的准确性.当我们的机器学习模型试图从数据中学习更多属性时,就会添加来自训练数据的噪声.这里的噪声 ...
- python 作用with_即使__init__方法有效,Python中的With语句仍返...
对于具有以下init方法的数据库类: class DB: def __init__(self, dbprops): self.dbprops = dbprops self.conn = self.ge ...
- Linux共享库编程方法,Linux共享库c
我有一个明智的共享图书馆.我如何在我的程序中使用它?我是否需要包含该库的标题? 我在Linux下使用Eclipce.我使用-L和-l设置了库的路径.但我的功能在程序中不可见. 你能解释一下共享图书馆是 ...
- oracle数据导入到python,Python导入oracle数据的方法 -电脑资料
作者:Sephiroth 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Python导入oracle数据的方法,涉及Python读取csv文件信息再插入到Oracle数据库的相关技巧,具有一定参 ...
- Python语言中的注释方法应用
Python语言中的注释方法 在Python编程中,与其他编程语言一样,有良好的注释部分,会让你的程序在后续的改进或优化中,变得便利.同时,给自己培养了良好的编程习惯. 在Python语言中,有两种注 ...
- chatgpt赋能python:Python中的s.len()方法介绍
Python中的s.len()方法介绍 Python中有各种字符串处理方法,其中s.len()方法是一个重要的方法之一.s.len()返回一个字符串s的长度.这是一个非常基本的方法,但是在很多情况下都 ...
最新文章
- Asp.NET 获取网站根目录
- 『流畅的Python』第12章:继承的优缺点
- elasticsearch5.3安装插件head
- java使用validator进行校验
- 解决linux下QtCreator无法输入中文的情况
- 本周leetcode刷题总结!(二叉树)
- 操作系统微内核架构研究
- 2006年最一针见血的199句话!经典
- 商标注册要的一些重要基本常识(附:注册流程)
- Unity 游戏框架搭建 2017 (二十四) 小结
- python如何控制手机发短信_利用Python实现手机短信监控通知
- 程序员一周内了解一个行业的方法
- PostGIS系列课程之空间约束(三)
- renren_login_urllib
- Java接口之间的多继承
- 送书 | 聊聊逆向爬取数据
- 字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)
- python freshman day1
- origin2019插入图片_Origin2019下载
- 计算机英语作文150字,英语作文150字