Python 库记录

Author Avatar
Tr0y 8月 24, 2017 14:04:39 本文共 630 字
  • 文为知己者书
  • 在其它设备中阅读本文章

一些标准库与第三方库记录

标准库

difflib

difflib: 文本差异

import difflib
print difflib.SequenceMatcher(None, '今天天气不错', '今天气很好').ratio() #输出: 0.666666666667

filecmp

filecmp: 文件对比

import filecmp
filecmp.cmp('undoc.rst', 'undoc.rst')

struct

>>> import struct
>>> struct.pack('I', 10240099)
'c@\x9c\x00'
>>> struct.pack('<I', 10240099)
'c@\x9c\x00'
>>> struct.pack('>I', 10240099)
'\x00\x9c@c'
>>> struct.pack('I', 2**32-1)
'\xff\xff\xff\xff'
>>> struct.unpack('I', _)
(4294967295L,)
#< 小端序
#> 大端序
#I 无符号整型

第三方库

colorama

colorama: cmd 彩色输出
pip install colorama

from colorama import Fore, Back, Style
print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.DIM + 'and in dim text')
print(Style.RESET_ALL)
print('back to normal now')

progressbar2

progressbar2: cmd 进度条
pip install progressbar2

import time
import progressbar

bar = progressbar.ProgressBar()
for i in bar(range(100)):
    time.sleep(0.02)

jieba

jieba: 中文分词
pip install jieba

import jieba

seg_list = jieba.cut("我来到北京清华大学")
print / ".join(seg_list) #输出: 我/ 来到/ 北京/ 清华大学

fake-useragent

fake-useragent: 更多 useragent!
pip install fake-useragent

from fake_useragent import UserAgent
ua = UserAgent()
print ua.random

pyfiglet

pyfiglet: 字符 Ascii
pip install pyfiglet

from pyfiglet import Figlet
f = Figlet(font='slant')
print f.renderText('text to render')
#输出:
   __            __     __                               __         
  / /____  _  __/ /_   / /_____     ________  ____  ____/ /__  _____
 / __/ _ \| |/_/ __/  / __/ __ \   / ___/ _ \/ __ \/ __  / _ \/ ___/
/ /_/  __/>  </ /_   / /_/ /_/ /  / /  /  __/ / / / /_/ /  __/ /    
\__/\___/_/|_|\__/   \__/\____/  /_/   \___/_/ /_/\__,_/\___/_/     

PrettyTable

PrettyTable: 表格格式化输出
pip install prettytable

from prettytable import PrettyTable
x = PrettyTable(["姓名", "性别", "年龄", "存款"])
x.add_row(["赵一","男", 20, 100000])
x.add_row(["钱二","男", 21, 500])
x.add_row(["孙三", "男", 22, 400.7])
x.add_row(["李四", "男", 23, 619.5])
x.add_row(["周五", "男", 24, 1214.8])
x.add_row(["吴六", "女", 25, 646.9])
x.add_row(["郑七", "女", 26, 869.4])
x.add_row(["王七加一", "男", 21, 869.4])

print(x)

'''
结果
+----------+------+------+--------+
|   姓名   | 性别 | 年龄 |  存款  |
+----------+------+------+--------+
|   赵一   |  男  |  20  | 100000 |
|   钱二   |  男  |  21  |  500   |
|   孙三   |  男  |  22  | 400.7  |
|   李四   |  男  |  23  | 619.5  |
|   周五   |  男  |  24  | 1214.8 |
|   吴六   |  女  |  25  | 646.9  |
|   郑七   |  女  |  26  | 869.4  |
| 王七加一 |  男  |  21  | 869.4  |
+----------+------+------+--------+
'''

psutil

psutil: 系统性能信息
pip install psutil

tenacity

(无比简单的 Exception Retry)[https://pypi.org/project/tenacity/]
出现错误的时候自动重试。还有延时以及其他功能,高持续爬虫必备。
pip install tenacity

gmpy2

密码学相关,用过都说好。

End

What do you think?

本文标题: Python 库记录
原始链接: http://www.tr0y.wang/2017/08/24/pyPackages/
发布时间: 2017.08.24-14:04
最后更新: 2018.11.03-21:15
版权声明: 本站文章均采用CC BY-NC-SA 4.0协议进行许可。转载请注明出处!