扫一扫
关注 HG 公众号
发现更多开源乐趣

Python 项目

兴趣是最好的老师,HelloGitHub 就是帮你找到编程的兴趣。

ZeroNet

第 46 期 Star 15.7k Watch 855 Fork 2.0k
一个使用 Bitcoin 加密和 BitTorrent 网络的去中心化网络。将传统巨头垄断的互联网变得平民化,不需要租用服务器不需要公网 IP,每个人都可以轻松创建分布式博客、分布式论坛、分布式微博、分布式视频网站、分布式直播网站等等
ZeroNet

KeymouseGo

第 46 期 Star 585 Watch 20 Fork 118 中文
Python 实现的精简绿色版按键精灵。记录用户的鼠标、键盘操作,自动执行之前记录的操作,可设定执行的次数。在进行某些简单、单调重复的操作时,使用该软件可以十分省事儿。只需要录制一遍,剩下的交给 KeymouseGo 来做就可以了
KeymouseGo

PythonPlantsVsZombies

第 45 期 Star 1.2k Watch 35 Fork 257
Python 语言编写的植物大战僵尸。学习如何使用 Python 编写小游戏的极佳例子,运行步骤:

1. 需要 Python 3
2. 安装依赖库:pip install pygame
3. python main.py

PythonPlantsVsZombies

wttr.in

第 47 期 Star 10.7k Watch 184 Fork 568
一个 Python 实现的命令行查看天气工具
wttr.in

word_cloud

第 46 期 Star 7.1k Watch 222 Fork 1.9k
Python 的词云生成工具。示例代码:

# 加载内容
text = open(path.join(d, 'constitution.txt')).read()
# 生成词云图片
wordcloud = WordCloud().generate(text)
# 展示生成的图片
image = wordcloud.to_image()
image.show()

word_cloud

vaex

第 46 期 Star 3.5k Watch 96 Fork 263
类似 Pandas 的 Python 数据处理库,在处理大型数据集的时候表现极大的优于 Pandas。Vaex 通过懒加载、延迟计算和零内存复制策略,极大的降低了内存的使用率、提高了计算的效率。从而能够每秒处理 10 亿行的数据,并且支持以直方图、密度图等形式展示数据。有大数据集处理需求的小伙伴赶快试试吧

mitmproxy

第 45 期 Star 18.9k Watch 565 Fork 2.5k
基于 Python 语言开发的抓包工具。支持命令行、Web 平台的形式展示抓包结果,还能通过 Python 引用库来拦截、控制响应和请求。下图展示为命令行使用界面(类 vim 操作)
mitmproxy

PySimpleGUI

第 45 期 Star 3.8k Watch 135 Fork 582
Python GUI 编程库,它是将 tkinter、Qt、Remi、WxPython 封装成更人性化的接口。示例代码和效果如下:

import PySimpleGUI as sg

sg.theme('DarkAmber')   # 设置主题颜色
# 界面内包含的东西
layout = [  [sg.Text('Some text on Row 1')],
            [sg.Text('Enter something on Row 2'), sg.InputText()],
            [sg.Button('Ok'), sg.Button('Cancel')] ]

# 创建窗口
window = sg.Window('Window Title', layout)
# 监听事件
while True:
    event, values = window.read()
    if event in (None, 'Cancel'):   # 用户点击取消按钮事件
        break
    print('You entered ', values[0])

window.close()

PySimpleGUI

sentry

第 46 期 Star 24.9k Watch 674 Fork 2.8k
一款免费开源的 Python 实时异常监控平台。采用 C/S 模式,服务器端通过 Python 实现,同时提供 web 管理页面,支持从任何语言、任何应用程序发送事件。一个成熟的服务必要的一环就是异常告警,Sentry 可以帮你及时知道服务非预期的异常
sentry

memory_profiler

第 45 期 Star 2.3k Watch 71 Fork 273
Python 程序内存占用分析工具。示例代码:

# 采用装饰器的方式引用,不影响现有代码
@profile
def my_func():
    a = [1] * (10 ** 6)
    b = [2] * (2 * 10 ** 7)
    del b
    return a

if __name__ == '__main__':
    my_func()

# 运行命令:python -m memory_profiler example.py
# 输出:
Line #    Mem usage  Increment   Line Contents
==============================================
     3                           @profile
     4      5.97 MB    0.00 MB   def my_func():
     5     13.61 MB    7.64 MB       a = [1] * (10 ** 6)
     6    166.20 MB  152.59 MB       b = [2] * (2 * 10 ** 7)
     7     13.61 MB -152.59 MB       del b
     8     13.61 MB    0.00 MB       return a