下拉刷新
Python 项目

这里是按照「分类」阅读往期的 HelloGitHub 月刊内容, 您目前在查看 HelloGitHub Python 项目 集合。

81
buzz
Star 1.6w
Vol.100
21 小时前

音频转录与翻译工具。该项目是基于 Whisper 的音频转录和翻译工具,它开箱即用且操作简单,支持语音转文字、音频翻译、多种语言和离线使用,适用于 macOS、Windows 和 Linux 平台。

buzz
82
helium
Star 8.2k
Vol.100
1 个月前

简化浏览器自动化的 Python 库。该项目是基于 Selenium 的轻量级 Python 库,它通过提供更高级和易用的 API,让用 Python 编写浏览器自动化脚本变得更加简单和方便,支持 Chrome 和 Firefox 浏览器。

helium
Star 1.6k
Vol.100
7 个月前

Python 的热重载工具。这是一个专为 Python 提供热重载功能的库,它支持在程序运行时修改和更新 Python 代码,无需重启程序。

# Loop over a function
jurigged --loop function_name script.py
jurigged --loop module_name:function_name script.py

# Only stop on exceptions
jurigged --xloop function_name script.py
jurigged
Star 3.9k
Vol.100
2 年前

更好用的 Python 排序集合库。该项目提供了 SortedList、SortedDict 和 SortedSet 三种数据结构,完全兼容 List、Dict、Set 内置数据类型的 API。尽管采用纯 Python 编写,其速度却可以媲美使用 C 扩展实现的 Python 库。

from sortedcontainers import SortedList
sl = SortedList(['e', 'a', 'c', 'd', 'b'])
# sl: SortedList(['a', 'b', 'c', 'd', 'e'])
sl *= 10_000_000
sl.count('c')  # 10000000
sl[-3:]  # ['e', 'e', 'e']

from sortedcontainers import SortedDict
sd = SortedDict({'c': -3, 'a': 1, 'b': 2})
# sd: SortedDict({'a': 1, 'b': 2, 'c': -3})
sd.popitem(index=-1)  # ('c', -3)

from sortedcontainers import SortedSet
ss = SortedSet('abracadabra')
# ss: SortedSet(['a', 'b', 'c', 'd', 'r'])
ss.bisect_left('c')  # 2
85
radon
Star 1.9k
Vol.100
1 年前

Python 代码质量分析工具。这是一款强大的 Python 代码度量工具,它能够计算多种代码指标,包括 McCabe 复杂度、Halstead 指标和可维护性指数,适用于 Python 代码质量评估和持续集成等场景。

$ radon cc sympy/solvers/solvers.py -a -nc
sympy/solvers/solvers.py
    F 346:0 solve - F
    F 1093:0 _solve - F
    F 1434:0 _solve_system - F
    F 2647:0 unrad - F
    F 110:0 checksol - F
    F 2238:0 _tsolve - F
    F 2482:0 _invert - F
    F 1862:0 solve_linear_system - E
    F 1781:0 minsolve_linear_system - D
    F 1636:0 solve_linear - D
    F 2382:0 nsolve - C

11 blocks (classes, functions, methods) analyzed.
Average complexity: F (61.0)
Star 5k
Vol.99
6 天前

自动删除电脑端微信缓存数据的工具。该项目是用 PyQt5 写的 Windows 工具,它可以清理微信电脑客户端自动下载的无用数据,支持自动识别账号、多账号管理,以及选择清理文件的类型和设置清理多久以前文件等功能。

CleanMyWechat
87
searxng
Star 2.4w
Vol.99
4 天前

尊重个人隐私的 Python 元搜索引擎。该项目是基于 Flask 构建的聚合搜索引擎,能够整合来自 70 多个搜索引擎的搜索结果。它安装简单、不追踪用户行为,支持选择搜索引擎、安全搜索和多语言等功能。

searxng
88
vulture
Star 4.2k
Vol.99
22 天前

Python 的“死”代码侦探。这是一个 Python 的静态代码分析工具,它可以找出 Python 项目中未使用的代码,仅需一条命令,就能清理没用和无效的 Python 函数、变量和代码片段。

89
warp
Star 5.9k
Vol.99
10 小时前

编写高性能仿真程序的 Python 框架。该项目是英伟达开源的 Python 框架,它通过即时编译技术将 Python 代码,转换为可以在 CPU 或 GPU 上运行的高效内核代码,可用于编写模拟物理环境、碰撞检测和图形处理等程序。

import warp as wp
import numpy as np

num_points = 1024

@wp.kernel
def length(points: wp.array(dtype=wp.vec3),
           lengths: wp.array(dtype=float)):

    # thread index
    tid = wp.tid()
    
    # compute distance of each point from origin
    lengths[tid] = wp.length(points[tid])


# allocate an array of 3d points
points = wp.array(np.random.rand(num_points, 3), dtype=wp.vec3)
lengths = wp.zeros(num_points, dtype=float)

# launch kernel
wp.launch(kernel=length,
          dim=len(points),
          inputs=[points, lengths])

print(lengths)
warp
90
wsgidav
Star 1.2k
Vol.99
4 个月前

基于 WSGI 的 WebDAV 服务器。WebDAV 是一种允许在网络上直接编辑和管理文件的通信协议,多用于文档共享、云存储和文件同步等场景。该项目是用 Python 写的 WebDAV 服务器,可独立运行、自带简单的 Web 界面,支持 MS Office 文档在线编辑和身份验证等功能。

wsgidav