百科问答小站 logo
百科问答小站 font logo



哪些 Python 库让你相见恨晚? 第1页

     

user avatar   lingfeng 网友的相关建议: 
      


Awesome Python中文版来啦!

本文由 伯乐在线 - 艾凌风 翻译,Namco 校稿。未经许可,禁止转载!
英文出处:github.com

----------------

这又是一个 Awesome XXX 系列的资源整理,由 vinta 发起和维护。内容包括:Web框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。

伯乐在线已在 GitHub 上发起「Python 资源大全中文版」的整理。欢迎扩散、欢迎加入。

GitHub - jobbole/awesome-python-cn: Python资源大全中文版

环境管理

管理 Python 版本和环境的工具

  • p – 非常简单的交互式 python 版本管理工具。
  • pyenv – 简单的 Python 版本管理工具。
  • Vex – 可以在虚拟环境中执行命令。
  • virtualenv – 创建独立 Python 环境的工具。
  • virtualenvwrapper- virtualenv 的一组扩展。

包管理

管理包和依赖的工具。

  • pip – Python 包和依赖关系管理工具。
  • pip-tools – 保证 Python 包依赖关系更新的一组工具。
  • conda – 跨平台,Python 二进制包管理工具。
  • Curdling – 管理 Python 包的命令行工具。
  • wheel – Python 分发的新标准,意在取代 eggs。

包仓库

本地 PyPI 仓库服务和代理。


  • devpi – PyPI 服务和打包/测试/分发工具。
  • localshop – 本地 PyPI 服务(自定义包并且自动对 PyPI 镜像)。

分发

打包为可执行文件以便分发。

  • PyInstaller – 将 Python 程序转换成独立的执行文件(跨平台)。
  • dh-virtualenv – 构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。
  • Nuitka – 将脚本、模块、包编译成可执行文件或扩展模块。
  • py2app – 将 Python 脚本变为独立软件包(Mac OS X)。
  • py2exe – 将 Python 脚本变为独立软件包(Windows)。
  • pynsist – 一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python本身。

构建工具

将源码编译成软件。

  • buildout – 一个构建系统,从多个组件来创建,组装和部署应用。
  • BitBake – 针对嵌入式 Linux 的类似 make 的构建工具。
  • fabricate – 对任何语言自动找到依赖关系的构建工具。
  • PlatformIO – 多平台命令行构建工具。
  • PyBuilder – 纯 Python 实现的持续化构建工具。
  • SCons – 软件构建工具。

交互式解析器

交互式 Python 解析器。

文件

文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。

  • imghdr – (Python 标准库)检测图片类型。
  • mimetypes – (Python 标准库)将文件名映射为 MIME 类型。
  • path.py – 对 os.path 进行封装的模块。
  • pathlib – (Python3.4+ 标准库)跨平台的、面向对象的路径操作库。
  • python-magic- 文件类型检测的第三方库 libmagic 的 Python 接口。
  • Unipath- 用面向对象的方式操作文件和目录
  • watchdog – 管理文件系统事件的 API 和 shell 工具

日期和时间

操作日期和时间的类库。

  • arrow- 更好的 Python 日期时间操作类库。
  • Chronyk – Python 3 的类库,用于解析手写格式的时间和日期。
  • dateutil – Python datetime 模块的扩展。
  • delorean- 解决 Python 中有关日期处理的棘手问题的库。
  • moment – 一个用来处理时间和日期的Python库。灵感来自于Moment.js。
  • PyTime – 一个简单易用的Python模块,用于通过字符串来操作日期/时间。
  • pytz – 现代以及历史版本的世界时区定义。将时区数据库引入Python。
  • when.py – 提供用户友好的函数来帮助用户进行常用的日期和时间操作。

文本处理

用于解析和操作文本的库。

  • 通用
    • chardet – 字符编码检测器,兼容 Python2 和 Python3。
    • difflib – (Python 标准库)帮助我们进行差异化比较。
    • ftfy – 让Unicode文本更完整更连贯。
    • fuzzywuzzy – 模糊字符串匹配。
    • Levenshtein – 快速计算编辑距离以及字符串的相似度。
    • pangu.py – 在中日韩语字符和数字字母之间添加空格。
    • pyfiglet -figlet 的 Python实现。
    • shortuuid – 一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。
    • unidecode – Unicode 文本的 ASCII 转换形式 。
    • uniout – 打印可读的字符,而不是转义的字符串。
    • xpinyin – 一个用于把汉字转换为拼音的库。


  • Slug化
    • awesome-slugify – 一个 Python slug 化库,可以保持 Unicode。
    • python-slugify – Python slug 化库,可以把 unicode 转化为 ASCII。
    • unicode-slugify – 一个 slug 工具,可以生成 unicode slugs ,需要依赖 Django 。


  • 解析器
    • phonenumbers – 解析,格式化,储存,验证电话号码。
    • PLY – lex 和 yacc 解析工具的 Python 实现。
    • Pygments – 通用语法高亮工具。
    • pyparsing – 生成通用解析器的框架。
    • python-nameparser – 把一个人名分解为几个独立的部分。
    • python-user-agents – 浏览器 user agent 解析器。
    • sqlparse – 一个无验证的 SQL 解析器。


特殊文本格式处理

一些用来解析和操作特殊文本格式的库。

  • 通用
    • tablib – 一个用来处理中表格数据的模块。


  • Office
    • Marmir – 把输入的Python 数据结构转换为电子表单。
    • openpyxl – 一个用来读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
    • python-docx – 读取,查询以及修改 Microsoft Word 2007/2008 docx 文件。
    • unoconv – 在 LibreOffice/OpenOffice 支持的任意文件格式之间进行转换。
    • XlsxWriter – 一个用于创建 Excel .xlsx 文件的 Python 模块。
    • xlwings – 一个使得在 Excel 中方便调用 Python 的库(反之亦然),基于 BSD 协议。
    • xlwt / xlrd – 读写 Excel 文件的数据和格式信息。
    • relatorio – 模板化OpenDocument 文件。


  • PDF
    • PDFMiner – 一个用于从PDF文档中抽取信息的工具。
    • PyPDF2 – 一个可以分割,合并和转换 PDF 页面的库。
    • ReportLab – 快速创建富文本 PDF 文档。


  • Markdown
    • Mistune – 快速并且功能齐全的纯 Python 实现的 Markdown 解析器。
    • Python-Markdown – John Gruber’s Markdown 的 Python 版实现。


  • YAML
    • PyYAML – Python 版本的 YAML 解析器。


  • CSV
    • csvkit – 用于转换和操作 CSV 的工具。


  • Archive
    • unp – 一个用来方便解包归档文件的命令行工具。


自然语言处理

用来处理人类语言的库。

  • NLTK – 一个先进的平台,用以构建处理人类语言数据的 Python 程序。
  • jieba – 中文分词工具。
  • langid.py – 独立的语言识别系统。
  • Pattern – Python 网络信息挖掘模块。
  • SnowNLP – 一个用来处理中文文本的库。
  • TextBlob – 为进行普通自然语言处理任务提供一致的 API。
  • TextGrocery – 一简单高效的短文本分类工具,基于 LibLinear 和 Jieba。

文档

用以生成项目文档的库。


  • MkDocs – 对 Markdown 友好的文档生成器。
  • pdoc – 一个可以替换Epydoc 的库,可以自动生成 Python 库的 API 文档。
  • Pycco – 文学编程(literate-programming)风格的文档生成器。

配置

用来保存和解析配置的库。

  • configlogging 模块作者写的分级配置模块。
  • ConfigObj – INI 文件解析器,带验证功能。
  • ConfigParser – (Python 标准库) INI 文件解析器。
  • profig – 通过多种格式进行配置,具有数值转换功能。
  • python-decouple – 将设置和代码完全隔离。

命令行工具

用于创建命令行程序的库。

  • 命令行程序开发
    • cement – Python 的命令行程序框架。
    • click – 一个通过组合的方式来创建精美命令行界面的包。
    • cliff – 一个用于创建命令行程序的框架,可以创建具有多层命令的命令行程序。
    • clint – Python 命令行程序工具。
    • colorama – 跨平台彩色终端文本。
    • docopt – Python 风格的命令行参数解析器。
    • Gooey – 一条命令,将命令行程序变成一个 GUI 程序。
    • python-prompt-toolkit – 一个用于构建强大的交互式命令行程序的库。


  • 生产力工具
    • aws-cli – Amazon Web Services 的通用命令行界面。
    • bashplotlib – 在终端中进行基本绘图。
    • caniusepython3 – 判断是哪个项目妨碍你你移植到 Python 3。
    • cookiecutter – 从 cookiecutters(项目模板)创建项目的一个命令行工具。
    • doitlive – 一个用来在终端中进行现场演示的工具。
    • howdoi – 通过命令行获取即时的编程问题解答。
    • httpie – 一个命令行HTTP 客户端,cURL 的替代品,易用性更好。
    • PathPicker – 从bash输出中选出文件。
    • percol – 向UNIX shell 传统管道概念中加入交互式选择功能。
    • SAWS – 一个加强版的 AWS 命令行。
    • thefuck – 修正你之前的命令行指令。
    • mycli – 一个 MySQL 命令行客户端,具有自动补全和语法高亮功能。
    • pgcli – Postgres 命令行工具,具有自动补全和语法高亮功能。


下载器

用来进行下载的库.

  • s3cmd – 一个用来管理Amazon S3 和 CloudFront 的命令行工具。
  • s4cmd – 超级 S3 命令行工具,性能更加强劲。
  • you-get – 一个 YouTube/Youku/Niconico 视频下载器,使用 Python3 编写。
  • youtube-dl – 一个小巧的命令行程序,用来下载 YouTube 视频。

图像处理

用来操作图像的库.

  • pillow – Pillow 是一个更加易用版的 PIL
  • hmap – 图像直方图映射。
  • imgSeek – 一个使用视觉相似性搜索一组图片集合的项目。
  • nude.py – 裸体检测。
  • pyBarcode – 不借助 PIL 库在 Python 程序中生成条形码。
  • pygram – 类似 Instagram 的图像滤镜。
  • python-qrcode – 一个纯 Python 实现的二维码生成器。
  • Quads – 基于四叉树的计算机艺术。
  • scikit-image – 一个用于(科学)图像处理的 Python 库。
  • thumbor – 一个小型图像服务,具有剪裁,尺寸重设和翻转功能。
  • wandMagickWand的Python 绑定。MagickWand 是 ImageMagick的 C API 。

OCR

光学字符识别库。

音频

用来操作音频的库

  • audiolazy -Python 的数字信号处理包。
  • audioread – 交叉库 (GStreamer + Core Audio + MAD + FFmpeg) 音频解码。
  • beets – 一个音乐库管理工具及 MusicBrainz 标签添加工具
  • dejavu – 音频指纹提取和识别
  • django-elastic-transcoder – Django + Amazon Elastic Transcoder
  • eyeD3 – 一个用来操作音频文件的工具,具体来讲就是包含 ID3 元信息的 MP3 文件。
  • id3reader – 一个用来读取 MP3 元数据的 Python 模块。
  • m3u8 – 一个用来解析 m3u8 文件的模块。
  • mutagen – 一个用来处理音频元数据的 Python 模块。
  • pydub – 通过简单、简洁的高层接口来操作音频文件。
  • pyechonestEcho Nest API 的 Python 客户端
  • talkbox – 一个用来处理演讲/信号的 Python 库
  • TimeSide – 开源 web 音频处理框架。
  • tinytag – 一个用来读取MP3, OGG, FLAC 以及 Wave 文件音乐元数据的库。
  • mingus – 一个高级音乐理论和曲谱包,支持 MIDI 文件和回放功能。

视频

用来操作视频和GIF的库。

  • moviepy – 一个用来进行基于脚本的视频编辑模块,适用于多种格式,包括动图 GIFs。
  • scikit-video – SciPy 视频处理常用程序。

地理位置

地理编码地址以及用来处理经纬度的库。

  • GeoDjango – 世界级地理图形 web 框架。
  • GeoIP – MaxMind GeoIP Legacy 数据库的 Python API。
  • geojson – GeoJSON 的 Python 绑定及工具。
  • geopy – Python 地址编码工具箱。
  • pygeoip – 纯 Python GeoIP API。
  • django-countries – 一个 Django 应用程序,提供用于表格的国家选择功能,国旗图标静态文件以及模型中的国家字段。

HTTP

使用HTTP的库。

  • requests – 人性化的HTTP请求库。
  • grequests – requests 库 + gevent ,用于异步 HTTP 请求.
  • httplib2 – 全面的 HTTP 客户端库。
  • treq – 类似 requests 的Python API 构建于 Twisted HTTP 客户端之上。
  • urllib3 – 一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。

数据库

Python实现的数据库。

  • pickleDB – 一个简单,轻量级键值储存数据库。
  • PipelineDB – 流式 SQL 数据库。
  • TinyDB – 一个微型的,面向文档型数据库。
  • ZODB – 一个 Python 原生对象数据库。一个键值和对象图数据库。

数据库驱动

用来连接和操作数据库的库。

  • MySQL – awesome-mysql系列
    • mysql-python – Python 的 MySQL 数据库连接器。
    • mysqlclient – mysql-python 分支,支持 Python 3。
    • oursql – 一个更好的 MySQL 连接器,支持原生预编译指令和 BLOBs.
    • PyMySQL – 纯 Python MySQL 驱动,兼容 mysql-python。


  • PostgreSQL
    • psycopg2 – Python 中最流行的 PostgreSQL 适配器。
    • queries – psycopg2 库的封装,用来和 PostgreSQL 进行交互。
    • txpostgres – 基于 Twisted 的异步 PostgreSQL 驱动。


  • 其他关系型数据库
    • apsw – 另一个 Python SQLite封装。
    • dataset – 在数据库中存储Python字典 – 可以协同SQLite,MySQL,和 PostgreSQL工作。
    • pymssql- 一个简单的Microsoft SQL Server数据库接口。


  • NoSQL 数据库
    • cassandra-python-driver – Cassandra 的 Python 驱动。
    • HappyBase – 一个为 Apache HBase 设计的,对开发者友好的库。
    • Plyvel – 一个快速且功能丰富的 LevelDB 的 Python 接口。
    • py2neo – Neo4j restful 接口的Python 封装客户端。
    • pycassa – Cassandra 的 Python Thrift 驱动。
    • PyMongo – MongoDB 的官方 Python 客户端。
    • redis-py – Redis 的 Python 客户端。
    • telephus – 基于 Twisted 的 Cassandra 客户端。
    • txRedis – 基于 Twisted 的 Redis 客户端。


ORM

实现对象关系映射或数据映射技术的库。


    • Peewee – 一个小巧,富有表达力的 ORM。
    • PonyORM – 提供面向生成器的 SQL 接口的 ORM。
    • python-sql – 编写 Python 风格的 SQL 查询。


  • NoSQL 数据库
    • django-mongodb-engine – Django MongoDB 后端。
    • PynamoDBAmazon DynamoDB 的一个 Python 风格接口。
    • flywheel – Amazon DynamoDB 的对象映射工具。
    • MongoEngine – 一个Python 对象文档映射工具,用于 MongoDB。
    • hot-redis – 为 Redis 提供 Python 丰富的数据类型。
    • redisco – 一个 Python 库,提供可以持续存在在 Redis 中的简单模型和容器。


  • 其他
    • butterdb – Google Drive 电子表格的 Python ORM。


Web 框架

全栈 web 框架。



  • Pyramid – 一个小巧,快速,接地气的开源Python web 框架。


  • Bottle – 一个快速小巧,轻量级的 WSGI 微型 web 框架。
  • CherryPy – 一个极简的 Python web 框架,服从 HTTP/1.1 协议且具有WSGI 线程池。
  • TurboGears – 一个可以扩展为全栈解决方案的微型框架。
  • web.py – 一个 Python 的 web 框架,既简单,又强大。
  • web2py – 一个全栈 web 框架和平台,专注于简单易用。
  • Tornado – 一个web 框架和异步网络库。

权限

允许或拒绝用户访问数据或功能的库。

  • Carteblanche – Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.
  • django-guardian – Django 1.2+ 实现了单个对象权限。
  • django-rules – 一个小巧但是强大的应用,提供对象级别的权限管理,且不需要使用数据库。

CMS

内容管理系统

  • django-cms – 一个开源的,企业级 CMS,基于 Django。
  • djedi-cms – 一个轻量级但却非常强大的 Django CMS ,考虑到了插件,内联编辑以及性能。
  • FeinCMS – 基于 Django 构建的最先进的内容管理系统之一。
  • Kotti – 一个高级的,Python 范的 web 应用框架,基于 Pyramid 构建。
  • Mezzanine – 一个强大的,持续的,灵活的内容管理平台。
  • Opps – 一个为杂志,报纸网站以及大流量门户网站设计的 CMS 平台,基于 Django。
  • Plone – 一个构建于开源应用服务器 Zope 之上的 CMS。
  • Quokka – 灵活,可扩展的小型 CMS,基于 Flask 和 MongoDB。
  • Wagtail – 一个 Django 内容管理系统。
  • Widgy – 最新的 CMS 框架,基于 Django。

电子商务

用于电子商务以及支付的框架和库。

  • django-oscar – 一个用于 Django 的开源的电子商务框架。
  • django-shop – 一个基于 Django 的店铺系统。
  • Cartridge – 一个基于 Mezzanine 构建的购物车应用。
  • shoop – 一个基于 Django 的开源电子商务平台。
  • alipay – 非官方的 Python 支付宝 API。
  • merchant – 一个可以接收来自多种支付平台支付的 Django 应用。
  • money – 货币类库with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.
  • python-currencies – 显示货币格式以及它的数值。

RESTful API

用来开发RESTful APIs的库


  • Flask
    • flask-api – 为 flask 开发的,可浏览 Web APIs 。
    • flask-restful – 为 flask 快速创建REST APIs 。
    • flask-restless – 为 SQLAlchemy 定义的数据库模型创建 RESTful APIs 。
    • flask-api-utils – 为 Flask 处理 API 表示和验证。
    • eve – REST API 框架,由 Flask, MongoDB 等驱动。


  • Pyramid
    • cornice – 一个Pyramid 的 REST 框架 。


  • 与框架无关的
    • falcon – 一个用来建立云 API 和 web app 后端的噶性能框架。
    • sandman – 为现存的数据库驱动系统自动创建 REST APIs 。
    • restless – 框架无关的 REST 框架 ,基于从 Tastypie 学到的知识。
    • ripozo – 快速创建 REST/HATEOAS/Hypermedia APIs。


验证

实现验证方案的库。

  • OAuth
    • Authomatic – 简单但是强大的框架,身份验证/授权客户端。
    • django-allauth – Django 的验证应用。
    • django-oauth-toolkit – 为 Django 用户准备的 OAuth2。
    • django-oauth2-provider – 为 Django 应用提供 OAuth2 接入。
    • Flask-OAuthlib – OAuth 1.0/a, 2.0 客户端实现,供 Flask 使用。
    • OAuthLib – 一个 OAuth 请求-签名逻辑通用、 完整的实现。
    • python-oauth2 – 一个完全测试的抽象接口。用来创建 OAuth 客户端和服务端。
    • python-social-auth – 一个设置简单的社会化验证方式。
    • rauth – OAuth 1.0/a, 2.0, 和 Ofly 的 Python 库。
    • sanction – 一个超级简单的OAuth2 客户端实现。


  • 其他
    • jose – JavaScript 对象签名和加密草案的实现。
    • PyJWT – JSON Web 令牌草案 01。
    • python-jws – JSON Web 签名草案 02 的实现。
    • python-jwt – 一个用来生成和验证 JSON Web 令牌的模块。


模板引擎

模板生成和词法解析的库和工具。

  • Jinja2 – 一个现代的,对设计师友好的模板引擎。
  • Chameleon – 一个 HTML/XML 模板引擎。 模仿了 ZPT(Zope Page Templates), 进行了速度上的优化。
  • Genshi – Python 模板工具,用以生成 web 感知的结果。
  • Mako – Python 平台的超高速轻量级模板。

Queue

处理事件以及任务队列的库。

  • celery – 一个异步任务队列/作业队列,基于分布式消息传递。
  • huey – 小型多线程任务队列。
  • mrq – Mr. Queue -一个 Python 的分布式 worker 任务队列, 使用 Redis 和 gevent。
  • rq – 简单的 Python 作业队列。
  • simpleq – 一个简单的,可无限扩张的,基于亚马逊 SQS 的队列。

搜索

对数据进行索引和执行搜索查询的库和软件。

动态消息

用来创建用户活动的库。

资源管理

管理、压缩、缩小网站资源的工具。

  • django-compressor – 将链接和内联的 JavaScript 或 CSS 压缩到一个单独的缓存文件中。
  • django-storages – 一个针对 Django 的自定义存储后端的工具集合。
  • fanstatic – 打包、优化,并且把静态文件依赖作为 Python 的包来提供。
  • File Conveyor – 一个后台驻留的程序,用来发现和同步文件到 CDNs, S3 和 FTP。
  • Flask-Assets – 帮你将 web 资源整合到你的 Flask app 中。
  • jinja-assets-compressor – 一个 Jinja 扩展,用来编译和压缩你的资源。
  • webassets – 为你的静态资源打包、优化和管理生成独一无二的缓存 URL。

缓存

缓存数据的库。

  • Beaker – 一个缓存和会话库,可以用在 web 应用和独立 Python脚本和应用上。
  • django-cache-machine – Django 模型的自动缓存和失效。
  • django-cacheops- 具有自动颗粒化事件驱动失效功能的 ORM。
  • django-viewlet – 渲染模板,同时具有额外的缓存控制功能。
  • dogpile.cache – dogpile.cache 是 Beaker 的下一代替代品,由同一作者开发。
  • HermesCache – Python 缓存库,具有基于标签的失效和 dogpile effect 保护功能。
  • johnny-cache – django应用缓存框架。
  • pylibmclibmemcached 接口的 Python 封装。

电子邮件

用来发送和解析电子邮件的库。

  • django-celery-ses – 带有 AWS SES 和 Celery 的 Django email 后端。
  • envelopes – 供人类使用的电子邮件库。
  • flanker – 一个 email 地址和 Mime 解析库。
  • imbox – Python IMAP 库
  • inbox.py – Python SMTP 服务器。
  • inbox – 一个开源电子邮件工具箱。
  • lamson – Python 风格的 SMTP 应用服务器。
  • mailjet – Mailjet API 实现,用来提供批量发送邮件,统计等功能。
  • marrow.mailer – 高性能可扩展邮件分发框架。
  • modoboa – 一个邮件托管和管理平台,具有现代的、简约的 Web UI。
  • pyzmail – 创建,发送和解析电子邮件。
  • Talon – Mailgun 库,用来抽取信息和签名。

国际化

用来进行国际化的库。

  • Babel – 一个Python 的国际化库。
  • Korean – 一个韩语词态库。

URL处理

解析URLs的库

  • furl – 一个让处理 URL 更简单小型 Python 库。
  • purl – 一个简单的,不可变的URL类,具有简洁的 API 来进行询问和处理。
  • pyshorteners – 一个纯 Python URL 缩短库。
  • shorturl- 生成短小 URL 和类似 bit.ly 短链的Python 实现。
  • webargs – 一个解析 HTTP 请求参数的库,内置对流行 web 框架的支持,包括 Flask, Django, Bottle, Tornado和 Pyramid。

HTML处理

处理 HTML和XML的库。

  • BeautifulSoup – 以 Python 风格的方式来对 HTML 或 XML 进行迭代,搜索和修改。
  • bleach – 一个基于白名单的 HTML 清理和文本链接库。
  • cssutils – 一个 Python 的 CSS 库。
  • html5lib – 一个兼容标准的 HTML 文档和片段解析及序列化库。
  • lxml – 一个非常快速,简单易用,功能齐全的库,用来处理 HTML 和 XML。
  • MarkupSafe – 为Python 实现 XML/HTML/XHTML 标记安全字符串。
  • pyquery – 一个解析 HTML 的库,类似 jQuery。
  • untangle – 将XML文档转换为Python对象,使其可以方便的访问。
  • xhtml2pdf – HTML/CSS 转 PDF 工具。
  • xmltodict – 像处理 JSON 一样处理 XML。

网络站点爬取

爬取网络站点的库

  • Scrapy – 一个快速高级的屏幕爬取及网页采集框架。
  • cola – 一个分布式爬虫框架。
  • Demiurge – 基于PyQuery 的爬虫微型框架。
  • feedparser – 通用 feed 解析器。
  • Grab – 站点爬取框架。
  • MechanicalSoup – 用于自动和网络站点交互的 Python 库。
  • portia – Scrapy 可视化爬取。
  • pyspider – 一个强大的爬虫系统。
  • RoboBrowser – 一个简单的,Python 风格的库,用来浏览网站,而不需要一个独立安装的浏览器。

网页内容提取

用于进行网页内容提取的库。

  • Haul – 一个可以扩展的图像爬取工具。
  • html2text – 将 HTML 转换为 Markdown 格式文本
  • lassie – 人性化的网页内容检索库。
  • micawber -一个小型网页内容提取库,用来从 URLs 提取富内容。
  • newspaper – 使用 Python 进行新闻提取,文章提取以及内容策展。
  • opengraph – 一个用来解析开放内容协议(Open Graph Protocol)的 Python模块。
  • python-goose – HTML内容/文章提取器。
  • python-readability- arc90 公司 readability 工具的 Python 高速端口
  • sanitize – 为杂乱的数据世界带来调理性。
  • sumy – 一个为文本文件和 HTML 页面进行自动摘要的模块。
  • textract – 从任何格式的文档中提取文本,Word,PowerPoint,PDFs 等等。

表单

进行表单操作的库。

  • Deform – Python HTML 表单生成库,受到了 formish 表单生成库的启发。
  • django-bootstrap3- 集成了 Bootstrap 3 的 Django。
  • django-crispy-forms – 一个 Django 应用,他可以让你以一种非常优雅且 DRY(Don’t repeat yourself) 的方式来创建美观的表单。
  • django-remote-forms- 一个平台独立的 Django 表单序列化工具。
  • WTForms – 一个灵活的表单验证和呈现库。
  • WTForms-JSON- 一个 WTForms 扩展,用来处理 JSON 数据。

数据验证

数据验证库。多用于表单验证。

  • Cerberus – A mappings-validator with a variety of rules, normalization-features and simple customization that uses a pythonic schema-definition.
  • colander – 一个用于对从 XML, JSON,HTML 表单获取的数据或其他同样简单的序列化数据进行验证和反序列化的系统。
  • kmatch – 一种用于匹配/验证/筛选 Python 字典的语言。
  • schema -一个用于对 Python 数据结构进行验证的库。
  • Schematics – 数据结构验证。
  • valideer – 轻量级可扩展的数据验证和适配库。
  • voluptuous – 一个 Python 数据验证库。主要是为了验证传入 Python的 JSON,YAML 等数据。

反垃圾技术

帮助你和电子垃圾进行战斗的库。

标记

用来进行标记的库。

管理面板

管理界面库。

  • Ajenti – 一个你的服务器值得拥有的管理面板。
  • django-suit – Django 管理界面的一个替代品 (仅对于非商业用途是免费的)。
  • django-xadmin – Django admin 的一个替代品,具有很多不错的功能。
  • flask-admin – 一个用于 Flask 的简单可扩展的管理界面框架。
  • flower – 一个对 Celery 集群进行实时监控和提供 web 管理界面的工具。
  • Grappelli – Django 管理界面的一个漂亮的皮肤。
  • Wooey – 一个 Django 应用,可以为 Python 脚本创建 web 用户界面。

静态站点生成器

静态站点生成器是一个软件,它把文本和模板作为输入,然后输出HTML文件。

  • Pelican – 使用 Markdown 或 ReST 来处理内容, Jinja 2 来制作主题。支持 DVCS, Disqus.。AGPL 许可。
  • Cactus – 为设计师设计的静态站点生成器。
  • Hyde – 基于 Jinja2 的静态站点生成器。
  • Nikola – 一个静态网站和博客生成器。
  • Tinkerer – Tinkerer 是一个博客引擎/静态站点生成器,由Sphinx驱动。
  • Lektor – 一个简单易用的静态 CMS 和博客引擎。

进程

操作系统进程启动及通信库。

  • envoy – 比 Python subprocess 模块更人性化。
  • sarge – 另一 种 subprocess 模块的封装。
  • sh – 一个完备的 subprocess 替代库。

并发和并行

用以进行并发和并行操作的库。

  • multiprocessing – (Python 标准库) 基于进程的“线程”接口。
  • threading – (Python 标准库)更高层的线程接口。
  • eventlet – 支持 WSGI 的异步框架。
  • gevent – 一个基于协程的 Python 网络库,使用greenlet
  • Tomorrow -用于产生异步代码的神奇的装饰器语法实现。

网络

用于网络编程的库。

  • asyncio – (Python 标准库) 异步 I/O, 事件循环, 协程以及任务。
  • Twisted – 一个事件驱动的网络引擎。
  • pulsar – 事件驱动的并发框架。
  • diesel – 基于Greenlet 的事件 I/O 框架。
  • pyzmq – 一个 ZeroMQ 消息库的 Python 封装。
  • txZMQ – 基于 Twisted 的 ZeroMQ 消息库的 Python 封装。

WebSocket

帮助使用WebSocket的库。

  • AutobahnPython – 给 Python 、使用的 WebSocket & WAMP 基于 Twisted 和 asyncio
  • Crossbar – 开源统一应用路由(Websocket & WAMP for Python on Autobahn).
  • django-socketio – 给 Django 用的 WebSockets。
  • WebSocket-for-Python – 为Python2/3 以及 PyPy 编写的 WebSocket 客户端和服务器库。

WSGI 服务器

兼容 WSGI 的 web 服务器

  • gunicorn – Pre-forked, 部分是由 C 语言编写的。
  • uwsgi – uwsgi 项目的目的是开发一组全栈工具,用来建立托管服务, 由 C 语言编写。
  • bjoern – 异步,非常快速,由 C 语言编写。
  • fapws3 – 异步 (仅对于网络端),由 C 语言编写。
  • meinheld – 异步,部分是由 C 语言编写的。
  • netius – 异步,非常快速。
  • paste – 多线程,稳定,久经考验。
  • rocket – 多线程。
  • waitress – 多线程, 是它驱动着 Pyramid 框架。
  • Werkzeug – 一个 WSGI 工具库,驱动着 Flask ,而且可以很方便大嵌入到你的项目中去。

RPC 服务器

兼容 RPC 的服务器。

  • SimpleJSONRPCServer – 这个库是 JSON-RPC 规范的一个实现。
  • SimpleXMLRPCServer – (Python 标准库) 简单的 XML-RPC 服务器实现,单线程。
  • zeroRPC – zerorpc 是一个灵活的 RPC 实现,基于 ZeroMQ 和 MessagePack。

密码学

  • cryptography – 这个软件包意在提供密码学基本内容和方法提供给 Python 开发者。
  • hashids – 在 Python 中实现 hashids
  • Paramiko – SSHv2 协议的 Python (2.6+, 3.3+) ,提供客户端和服务端的功能。
  • Passlib – 安全密码存储/哈希库,
  • PyCrypto – Python 密码学工具箱。
  • PyNacl – 网络和密码学(NaCl) 库的 Python 绑定。

图形用户界面

用来创建图形用户界面程序的库。

  • curses – 内建的 ncurses 封装,用来创建终端图形用户界面。
  • enaml – 使用类似 QML 的Declaratic语法来创建美观的用户界面。
  • kivy – 一个用来创建自然用户交互(NUI)应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS平台上。
  • pyglet – 一个Python 的跨平台窗口及多媒体库。
  • PyQt – 跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4 和 Qt v5。
  • PySide – P跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4。
  • Tkinter – Tkinter 是 Python GUI 的一个事实标准库。
  • Toga – 一个 Python 原生的, 操作系统原生的 GUI 工具包。
  • urwid – 一个用来创建终端 GUI 应用的库,支持组件,事件和丰富的色彩等。
  • wxPython – wxPython 是 wxWidgets C++ 类库和 Python 语言混合的产物。
  • PyGObject – GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定
  • Flexx – Flexx 是一个纯 Python 语言编写的用来创建 GUI 程序的工具集,它使用 web 技术进行界面的展示。

游戏开发

超赞的游戏开发库。

  • Cocos2d – cocos2d 是一个用来开发 2D 游戏, 示例和其他图形/交互应用的框架。基于 pyglet。
  • Panda3D – 由迪士尼开发的 3D 游戏引擎,并由卡内基梅陇娱乐技术中心负责维护。使用C++编写, 针对 Python 进行了完全的封装。
  • Pygame – Pygame 是一组 Python 模块,用来编写游戏。
  • PyOgre – Ogre 3D 渲染引擎的 Python 绑定,可以用来开发游戏和仿真程序等任何 3D 应用。
  • PyOpenGL – OpenGL 的 Python 绑定及其相关 APIs。
  • PySDL2 – SDL2 库的封装,基于 ctypes。
  • RenPy – 一个视觉小说(visual novel)引擎。

日志

用来生成和操作日志的库。

  • logging – (Python 标准库) 为 Python 提供日志功能。
  • logbook – Logging 库的替代品。
  • Eliot – 为复杂的和分布式系统创建日志。
  • Raven – Sentry的 Python 客户端。
  • Sentry – 实时记录和收集日志的服务器。

测试

进行代码库测试和生成测试数据的库。

  • 测试框架
    • unittest – (Python 标准库) 单元测试框架。
    • nose – nose 扩展了 unittest 的功能。
    • contexts – 一个 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的启发。
    • hypothesis – Hypothesis 是一个基于先进的 Quickcheck 风格特性的测试库。
    • mamba – Python 的终极测试工具, 拥护BDD。
    • PyAutoGUI – PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块。
    • pyshould- Should 风格的断言,基于 PyHamcrest
    • pytest- 一个成熟的全功能 Python 测试工具。
    • green- 干净,多彩的测试工具。
    • pyvows- BDD 风格的测试工具,受Vows.js的启发。
    • Robot Framework – 一个通用的自动化测试框架。


  • Web 测试
    • SeleniumSelenium WebDriver 的 Python 绑定。
    • locust – 使用 Python 编写的,可扩展的用户加载测试工具。
    • sixpack – 一个和语言无关的 A/B 测试框架。
    • splinter – 开源的 web 应用测试工具。


  • Mock测试
    • mock – (Python 标准库) 一个用于伪造测试的库。
    • doublex – Python 的一个功能强大的 doubles 测试框架。
    • freezegun – 通过伪造日期模块来生成不同的时间。
    • httmock – 针对 Python 2.6+ 和 3.2+ 生成 伪造请求的库。
    • httpretty – Python 的 HTTP 请求 mock 工具。
    • responses – 伪造 Python 中的 requests 库的一个通用库。
    • VCR.py – 在你的测试中记录和重放 HTTP 交互。


  • 对象工厂
    • factoryboy – 一个 Python 用的测试固件 (test fixtures) 替代库。
    • mixer – 另外一个测试固件 (test fixtures) 替代库,支持 Django, Flask, SQLAlchemy, Peewee 等。
    • modelmommy – 为 Django 测试创建随机固件


  • 代码覆盖率


  • 伪数据
    • faker – 一个 Python 库,用来生成伪数据。
    • fake2db – 伪数据库生成器。
    • radar – 生成随机的日期/时间。


  • 错误处理
    • FuckIt.py – FuckIt.py 使用最先进的技术来保证你的 Python 代码无论对错都能继续运行。


代码分析和Lint工具

进行代码分析,解析和操作代码库的库和工具。

  • 代码分析
    • code2flow – 把你的 Python 和 JavaScript 代码转换为流程图。
    • pycallgraph -这个库可以把你的Python 应用的流程(调用图)进行可视化。
    • pysonar2 – Python 类型推断和检索工具。


  • Lint工具
    • Flake8 – 模块化源码检查工具: pep8, pyflakes 以及 co。
    • Pylint – 一个完全可定制的源码分析器。
    • pylama – Python 和 JavaScript 的代码审查工具。


调试工具

用来进行代码调试的库。

  • 调试器
    • ipdb – IPython 启用的 pdb
    • pudb – 全屏,基于控制台的 Python 调试器。
    • pyringe – 可以在 Python 进程中附加和注入代码的调试器。
    • wdb – 一个奇异的 web 调试器,通过 WebSockets 工作。
    • winpdb – 一个具有图形用户界面的 Python 调试器,可以进行远程调试,基于 rpdb2。
    • django-debug-toolbar – 为 Django 显示各种调试信息。
    • django-devserver – 一个 Django 运行服务器的替代品。
    • flask-debugtoolbar – django-debug-toolbar 的 flask 版。




科学技术和数据分析

用来进行科学计算和数据分析的库。

  • astropy – 一个天文学 Python 库。
  • bcbio-nextgen – 这个工具箱为全自动高通量测序分析提供符合最佳实践的处理流程。
  • bccb – 生物分析相关代码集合
  • Biopython – Biopython 是一组可以免费使用的用来进行生物计算的工具。
  • blaze – NumPy 和 Pandas 的大数据接口。
  • cclib – 一个用来解析和解释计算化学软件包输出结果的库。
  • NetworkX – 一个为复杂网络设计的高性能软件。
  • Neupy – 执行和测试各种不同的人工神经网络算法。
  • Numba – Python JIT (just in time) 编译器,针对科学用的 Python ,由Cython 和 NumPy 的开发者开发。
  • NumPy – 使用 Python 进行科学计算的基础包。
  • Open Babel – 一个化学工具箱,用来描述多种化学数据。
  • Open Mining – 使用 Python 挖掘商业情报 (BI) (Pandas web 接口)。
  • orange – 通过可视化编程或 Python 脚本进行数据挖掘,数据可视化,分析和机器学习。
  • Pandas – 提供高性能,易用的数据结构和数据分析工具。
  • PyDy – PyDy 是 Python Dynamics 的缩写,用来为动力学运动建模工作流程提供帮助, 基于 NumPy, SciPy, IPython 和 matplotlib。
  • PyMC – 马尔科夫链蒙特卡洛采样工具。
  • RDKit – 化学信息学和机器学习软件。
  • SciPy – 由一些基于 Python ,用于数学,科学和工程的开源软件构成的生态系统。
  • statsmodels – 统计建模和计量经济学。
  • SymPy – 一个用于符号数学的 Python 库。
  • zipline – 一个 Python 算法交易库。

数据可视化

进行数据可视化的库。 参见: awesome-javascript

  • matplotlib – 一个 Python 2D 绘图库。
  • bokeh – 用 Python 进行交互式 web 绘图。
  • ggplot – ggplot2 给 R 提供的 API 的 Python 版本。
  • plotly – 协同 Python 和 matplotlib 工作的 web 绘图库。
  • pygal – 一个 Python SVG 图表创建工具。
  • pygraphviz – Graphviz 的 Python 接口。
  • PyQtGraph – 交互式实时2D/3D/图像绘制及科学/工程学组件。
  • SnakeViz – 一个基于浏览器的 Python’s cProfile 模块输出结果查看工具。
  • vincent – 把 Python 转换为 Vega 语法的转换工具。
  • VisPy – 基于 OpenGL 的高性能科学可视化工具。

计算机视觉

计算机视觉库。

  • OpenCV – 开源计算机视觉库。
  • SimpleCV – 一个用来创建计算机视觉应用的开源框架。

机器学习

机器学习库。 参见: awesome-machine-learning.

  • Crab – 灵活、快速的推荐引擎。
  • gensim – 人性化的话题建模库。
  • hebel – GPU 加速的深度学习库。
  • NuPIC – 智能计算 Numenta 平台。
  • pattern – Python 网络挖掘模块。
  • PyBrain – 另一个 Python 机器学习库。
  • Pylearn2 – 一个基于 Theano 的机器学习库。
  • python-recsys – 一个用来实现推荐系统的 Python 库。
  • scikit-learn – 基于 SciPy 构建的机器学习 Python 模块。
  • pydeep – Python 深度学习库。
  • vowpalporpoise – 轻量级 Vowpal Wabbit 的 Python 封装。
  • skflow – 一个 TensorFlow 的简化接口(模仿 scikit-learn)。

MapReduce

MapReduce 框架和库。

  • dpark – Spark 的 Python 克隆版,一个类似 MapReduce 的框架。
  • dumbo – 这个 Python 模块可以让人轻松的编写和运行 Hadoop 程序。
  • luigi – 这个模块帮你构建批处理作业的复杂流水线。
  • mrjob – 在 Hadoop 或 Amazon Web Services 上运行 MapReduce 任务。
  • PySpark – Spark 的 Python API 。
  • streamparse – 运行针对事实数据流的 Python 代码。集成了Apache Storm

函数式编程

使用 Python 进行函数式编程。

  • CyToolz – Toolz 的 Cython 实现 : 高性能函数式工具。
  • fn.py – 在 Python 中进行函数式编程 : 实现了一些享受函数式编程缺失的功能。
  • funcy – 炫酷又实用的函数式工具。
  • Toolz – 一组用于迭代器,函数和字典的函数式编程工具。

第三方 API

用来访问第三方 API的库。 参见: List of Python API Wrappers and Libraries

  • apache-libcloud – 一个为各种云设计的 Python 库。
  • boto – Amazon Web Services 的 Python 接口。
  • django-wordpress – WordPress models and views for Django.
  • facebook-sdk – Facebook 平台的 Python SDK.
  • facepy – Facepy 让和 Facebook’s Graph API 的交互变得更容易。
  • gmail – Gmail 的 Python 接口。
  • google-api-python-client – Python 用的 Google APIs 客户端库。
  • gspread – Google 电子表格的 Python API.
  • twython – Twitter API 的封装。

DevOps 工具

用于 DevOps 的软件和库。

  • Ansible – 一个非常简单的 IT 自动化平台。
  • SaltStack – 基础设施自动化和管理系统。
  • OpenStack – 用于构建私有和公有云的开源软件。
  • Docker Compose – 快速,分离的开发环境,使用 Docker。
  • Fabric – 一个简单的,Python 风格的工具,用来进行远程执行和部署。
  • cuisine – 为 Fabric 提供一系列高级函数。
  • Fabtools – 一个用来编写超赞的 Fabric 文件的工具。
  • gitapi – Git 的纯 Python API。
  • hgapi – Mercurial 的纯 Python API。
  • honchoForeman的 Python 克隆版,用来管理基于Procfile的应用。
  • pexpect – Controlling interactive programs in a pseudo-terminal like 在一个伪终端中控制交互程序,就像 GNU expect 一样。
  • psutil – 一个跨平台进程和系统工具模块。
  • supervisor – UNIX 的进程控制系统。

任务调度

任务调度库。

  • APScheduler – 轻巧但强大的进程内任务调度,使你可以调度函数。
  • django-schedule – 一个 Django 排程应用。
  • doit – 一个任务执行和构建工具。
  • gunnery – 分布式系统使用的多用途任务执行工具 ,具有 web 交互界面。
  • Joblib – 一组为 Python 提供轻量级作业流水线的工具。
  • Plan – 如有神助地编写 crontab 文件。
  • schedule – 人性化的 Python 任务调度库。
  • Spiff – 使用纯 Python 实现的强大的工作流引擎。
  • TaskFlow – 一个可以让你方便执行任务的 Python 库,一致并且可靠。

外来函数接口

使用外来函数接口的库。

  • cffi – 用来调用 C 代码的外来函数接口。
  • ctypes – (Python 标准库) 用来调用 C 代码的外来函数接口。
  • PyCUDA – Nvidia CUDA API 的封装。
  • SWIG – 简化的封装和接口生成器。

高性能

让 Python 更快的库。

  • Cython – 优化的 Python 静态编译器。使用类型混合使 Python 编译成 C 或 C++ 模块来获得性能的极大提升。
  • PeachPy – 嵌入 Python 的 x86-64 汇编器。可以被用作 Python 内联的汇编器或者是独立的汇编器,用于 Windows, Linux, OS X, Native Client 或者 Go 。
  • PyPy – 使用 Python 实现的 Python。解释器使用黑魔法加快 Python 运行速度且不需要加入额外的类型信息。
  • Pyston – 使用 LLVM 和现代 JIT 技术构建的 Python 实现,目标是为了获得很好的性能。
  • Stackless Python – 一个强化版的 Python。

微软的 Windows平台

在 Windows 平台上进行 Python 编程。

  • Python(x,y) – 面向科学应用的 Python 发行版,基于 Qt 和 Spyder。
  • pythonlibs – 非官方的 Windows 平台 Python 扩展二进制包。
  • PythonNet – Python 与 .NET 公共语言运行库 (CLR)的集成。
  • PyWin32 – 针对 Windows 的Python 扩展。
  • WinPython – Windows 7/8 系统下便携式开发环境。

网络可视化和SDN

用来进行网络可视化和SDN(软件定义网络)的工具和库。

  • Mininet – 一款流行的网络模拟器以及用 Python 编写的 API。
  • POX – 一个针对基于 Python 的软件定义网络应用(例如 OpenFlow SDN 控制器)的开源开发平台。
  • Pyretic – 火热的 SDN 编程语言中的一员,为网络交换机和模拟器提供强大的抽象能力。
  • SDX Platform – 基于 SDN 的 IXP 实现,影响了 Mininet, POX 和 Pyretic。

硬件

用来对硬件进行编程的库。

  • ino -操作Arduino的命令行工具。
  • Pyro – Python 机器人编程库。
  • PyUserInput – 跨平台的,控制鼠标和键盘的模块。
  • scapy – 一个非常棒的操作数据包的库。
  • wifi – 一个 Python 库和命令行工具用来在 Linux 平台上操作WiFi。
  • Pingo – Pingo 为类似Raspberry Pi,pcDuino, Intel Galileo等设备提供统一的API用以编程。

兼容性

帮助从 Python 2 向 Python 3迁移的库。

  • Python-Future – 这就是 Python 2 和 Python 3 之间丢失的那个兼容性层。
  • Python-Modernize – 使 Python 代码更加现代化以便最终迁移到 Python 3。
  • Six – Python 2 和 3 的兼容性工具。

杂项

不属于上面任何一个类别,但是非常有用的库。

  • blinker – 一个快速的 Python 进程内信号/事件分发系统。
  • itsdangerous – 一系列辅助工具用来将可信的数据传入不可信的环境。
  • pluginbase – 一个简单但是非常灵活的 Python 插件系统。
  • Pychievements – 一个用来创建和追踪成就的 Python 框架。
  • Tryton – 一个通用商务框架。

算法和设计模式

Python 实现的算法和设计模式。

编辑器插件

编辑器和 IDE 的插件

  • Emacs
    • Elpy – Emacs Python 开发环境。


  • Sublime Text
    • SublimeJEDI – 一个 Sublime Text 插件,用来使用超赞的自动补全库 Jedi。
    • Anaconda – Anaconda 把你的 Sublime Text 3 变成一个功能齐全的 Python IDE。


  • Vim
    • YouCompleteMe – 引入基于 Jedi 的 Python 自动补全引擎。
    • Jedi-vim – 绑定 Vim 和 Jedi 自动补全库对 Python 进行自动补全。
    • Python-mode – 将 Vim 变成 Python IDE 的一款多合一插件。


  • Visual Studio
    • PTVS – Visual Studio 的 Python 工具


集成开发环境

流行的 Python 集成开发环境。

  • PyCharm – 商业化的 Python IDE ,由 JetBrains 开发。也有免费的社区版提供。
  • LiClipse – 基于 Eclipse 的免费多语言 IDE 。使用 PyDev 来支持 Python 。
  • Spyder – 开源 Python IDE。

服务

在线工具和简化开发的 API 。

持续集成

参见: awesome-CIandCD.

  • Travis CI – 一个流行的工具,为你的开源和私人项目提供持续集成服务。(仅支持 GitHub)
  • CircleCI – 一个持续集成工具,可以非常快速的进行并行测试。 (仅支持 GitHub)
  • Vexor CI – 一个为私人 app 提供持续集成的工具,支持按分钟付费。
  • Wercker – 基于 Docker 平台,用来构建和部署微服务。

代码质量

  • Codacy – 自动化代码审查,更加快速的发布高质量代码。对于开源项目是免费的。
  • QuantifiedCode – 一个数据驱动、自动、持续的代码审查工具。

资源

在这里可以找到新的 Python 库。

网站

周刊

Twitter


user avatar   charles_pikachu 网友的相关建议: 
      

先不要脸地推下自己开源的Python库

1. DecryptLogin

项目文档:httpsgithubcomcharlespikachudecryptlogin.readthedocs.io

项目地址:github.com/CharlesPikac

主要功能:利用python的requests包模拟登录各大网站 (为后续的数据爬取做准备)

目前支持的站点:

安装:

       pip install DecryptLogin     

使用方式,以模拟登录知乎为例:

       from DecryptLogin import login  lg = login.Login() infos_return, session = lg.zhihu(username='Your Username', password='Your Password')     

效果:

项目地址里也添加了几个模拟登录之后的小案例,供大家学习使用:

2.musicdl

项目文档:musicdl.readthedocs.io/

项目地址:CharlesPikachu/musicdl

主要功能:一款简单易用的音乐下载器

安装:

       pip install musicdl     

快速开始:

       from musicdl import musicdl  config = {'logfilepath': 'musicdl.log', 'savedir': 'downloaded', 'search_size_per_source': 5, 'proxies': {}} target_srcs = ['baiduFlac', 'kugou', 'kuwo', 'qq', 'qianqian', 'netease', 'migu', 'xiami', 'joox'] client = musicdl.musicdl(config=config) client.run(target_srcs)     

效果:

更多功能自己看文档吧。项目仅供学习交流,侵删/发现项目被不当使用删,因为只是一个供新手学习的项目,失效了的话很正常(目前还是有效的),别找我抱怨,并没有打算一直维护。

3.其他

地址:github.com/CharlesPikac

只是一些开源的小项目,算不上python库,不过还是放上来给有需要的朋友吧。

再推几个自己用的比较多的开源库吧

1.数据可视化

个人用的比较多的是pyecharts:github.com/pyecharts/py

项目文档:pyecharts.org/#

一些效果图:

还有个可爱版的:github.com/cutecharts/c

效果如下:

2.mmdetection

项目地址:github.com/open-mmlab/m

项目文档:mmdetection.readthedocs.io

不想解释,做目标检测相关的同学都懂。。。以前看过一遍项目源代码,还是很有收获的。

3.openpyxl

项目文档:openpyxl.readthedocs.io

一款用于处理Excel文件的python第三方包,感觉还行,帮同学写数据处理脚本的时候基本都用的他。

4.kornia

项目文档:kornia.readthedocs.io/e

项目介绍:

可以配合pytorch使用,“懒人”必备。。。

楼上回答的比较多的一些python库我这就不重复推荐了。

最后,欢迎微信搜索关注:Charles的皮卡丘


user avatar   sgai 网友的相关建议: 
      

(1)hhatto/autopep8:自动格式化Python代码以符合PEP 8

1、一段测试代码如下:

2、使用命令:autopep8 --in-place --aggressive --aggressive test.py

3、转换之后的代码如下:

(2)python-for-android :把Python脚本打包成APK。

(3)python-visualization/folium : 用Python辅助实现地图的可视化或者有关于地图的操作,可以直接解析Json数据进行可视化。



(4)mzucker/noteshrink :把手写的笔记转成更加简单清晰漂亮的图片,因为平常记笔记比较多,所以比较有用。

1、一张我以前学习JavaScript时候写下的笔记照片(字丑请忽略)

2、执行命令:python noteshrink.py test.jpg

3、处理之后的结果



user avatar   pydatalysis 网友的相关建议: 
      

最近程沉迷于github,无法自拔,看到各种各样新奇又实用的第三方库。网络上有很多python库的排名、汇总,但总觉得不够具体生动。

我希望能在这里持续更新我喜欢的第三方可视化库,力求详实丰富。专栏里收集了github上更多有趣的python项目,喜欢就关注下哦!

github上的好东西确实多,之前也有项目整理过。


介绍的大体流程是:库名、类型、github star、功能、使用方法、案例、学习资料。

第一部分:数据可视化

pyecharts

类型:可视化图表设计

GitHub Star :5985

功能:

  1. 简洁的 API 设计,使用如丝滑般流畅,支持链式调用
  2. 囊括了 30+ 种常见图表,应有尽有
  3. 支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab
  4. 可轻松集成至 Flask,Django 等主流 Web 框架
  5. 高度灵活的配置项,可轻松搭配出精美的图表
  6. 详细的文档和示例,帮助开发者更快的上手项目
  7. 多达 400+ 地图文件以及原生的百度地图,为地理数据可视化提供强有力的支持

使用方法:

       from pyecharts.charts import Bar  bar = Bar() bar.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]) bar.add_yaxis("商家A", [5, 20, 36, 10, 75, 90]) # render 会生成本地 HTML 文件,默认会在当前目录生成 render.html 文件 # 也可以传入路径参数,如 bar.render("mycharts.html") bar.render()     

案例:

学习资料:

A Python Echarts Plotting Library

Superset

类型:开源的 企业级 轻量BI工具

GitHub star :24937

功能:

  1. 创建和分享可视化面板
  2. 有丰富的可视化方法来分析数据,且具有灵活的扩展能力
  3. 具有可扩展的、高粒度的安全模型,可以用复杂规则来控制访问权限。目前支持主要的认证提供商:DB、OpenID、LDAP、OAuth、和Flask AppBuiler的REMOTE_USER
  4. 使用简单的语法,就可以控制数据在UI中的展现方式
  5. 与Druid深度结合,可快速的分析大数据
  6. 配置缓存来快速加载仪表盘
  7. Superset最初是在Druid.io的基础上设计的,但是通过使用SQLAlchemy(一种与大多数常见数据库兼容的Python ORM),迅速扩展了范围以支持其他数据库。

使用方法:

安装好后,启动浏览器端,添加数据源,搭建可视化面板,分享,导出

1、安装:教程1教程2

2、使用:官方教程github简单使用教程

案例:

查看仪表板

数据切片和切块


使用SQL Lab查询和可视化数据


可视化地理空间数据


从各种可视化中进行选择


学习资源:官方文档

plotly

类型:非常著名且强大的交互式开源数据可视化框架

GitHub star :5235

功能:

  1. 交互式开源可视化框架,支持超过40种独特图表类型,涵盖统计、财务、地理、学术、三维等。
  2. 建立在Javascript plotly库基础上,能使python用户创建基于web的可交互的可视化作品,其能在jupyter notebook上展示,而且可以导出为HTML。
  3. plotly还可以在非web编辑器上(如pycharm、spyder)绘制图表
  4. 能导出出版级别的图片

使用方法:

       import plotly.express as px iris = px.data.iris() fig = px.scatter(iris, x="sepal_width", y="sepal_length") fig.show()     

案例:

学习资源:官方文档

Bokeh

类型:服务于浏览器的炫酷的交互式可视化库

GitHub star :11061

功能:

  • 专门针对Web浏览器的交互式、可视化Python绘图库
  • 提供优雅简洁的多功能可视化展示,能快速创建图表、仪表板和可视化应用
  • 可以做出像D3.js简洁漂亮的交互可视化效果,但是使用难度低于D3.js。
  • 独立的HTML文档或服务端程序
  • 可以处理大量、动态或数据流
  • 支持Python (或Scala, R, Julia…)
  • 不需要使用Javascript

使用方法:

       from bokeh.plotting import figure, output_file, show # 创建图表 p = figure(plot_width=300, plot_height=300, tools="pan,reset,save") # 图表中添加圆 p.circle([1, 2.5, 3, 2], [2, 3, 1, 1.5], radius=0.3, alpha=0.5) # 定义输出形式 output_file("foo.html") # 展示图表 show(p)     

案例:

学习资源:官方文档

Python里很多可视化都是基于matplotlib开发的,所以学习matplotlib的绘图框架很重要,大家要多看看。

之前在github上看到matplotlib的速查表,感觉很方便,分享出来。

Github主页地址:github.com/matplotlib/c

如果Github比较慢,我下载好了PDF和高清图片版,大家可以去下载看

一直在创作python&数据内容,从未停止哈哈,觉得不错点个关注 朱卫军 ~

未完待续!欢迎点赞收藏转发


user avatar   ruobingshen 网友的相关建议: 
      

tqdm

它在Github 接近1.7w的star!

那么,它是干吗用的呢?

它是terminal里的Python进度条!

就像这样


如果我说

我是博士毕业进入业界才接触这个神器的

不知会不会被同行笑话

(读博期间C++为主,不知C++有没有类似的神器?)


  1. 安装

安装tqdm非常简单

首先确保你安装了pip

python -m pip install -U pip

接着,打开terminal,然后输入

pip install tqdm

如果你用的是python3,那么

pip3 install tqdm


2. 使用

使用也非常傻瓜和方便

首先是引用这个库

from tqdm import tqdm

其次,在循环口加上tqdm:

       for i in tqdm(range(10000)):   pass     


3. trange

保姆式服务

tqdm(range(10000))

直接写成

trange(10000)

示例:

       from tqdm import trange for i in trange(10000):   pass     


4. 参数

tqdm的参数比较多

这里挑几个最常用的给大家介绍一下

tqdm (self, iterable, desc= "Text You want", mininterval=3, initial=50)

desc:可以设置进度条前面的文字

mininterval: 设置进度条显示的频率

initial:设置进度条的初始值


5. 小结

最近在公司处理无人驾驶数据比较多

经常要遍历很多文件夹

在知道tqdm之前

一个循环开始之后

我们通常是无法知道循环到底进展到哪里了

自从知道了这个Python库--tqdm

情况就大不相同了

tqdm(range(len(xx)))即可

我可以实时从terminal获取当前处理文件数据的进度

还能知道处理这些数据已经花了多少时间

以及预计还有多长时间可以处理完

真的是效率神器!


好了

最后推荐一个几乎不要钱(限时0.01元)的Python课程

适合编程小白

用游戏闯关的方式教你学编程

真的是非常初学者友好了

仅限100人!


user avatar   zhang-hao-72 网友的相关建议: 
      

pptx

下面这段程序可以快速生成一个ppt, 包括标题页和每个章节的小标题页。其实把每一页都生成出来也是可以的,只是会比较折腾,不值得了。

打开ppt,随便找一个喜欢的模块,存为templet.pptx,然后在同一目录下运行这个python程序,就出来了。

       import os  from pptx import Presentation from pptx.util import Inches, Pt from pptx.dml.color import ColorFormat, RGBColor import time  class contents:     title = "Title"     subtitle = "Author
Affiliation"     sections = ["Introduction", "Section 1", "Section 2", "Conclusion"]   class Prs:     def __init__(self, pptx_fname, templet_fname, contents):         self.prs = Presentation(templet_fname)         self.pptx_fname = pptx_fname         self.templet_fname = templet_fname         self.contents = contents      def Title(self):         title_slide_layout = self.prs.slide_layouts[0]         slide = self.prs.slides.add_slide(title_slide_layout)         title = slide.shapes.title         title.width = int(self.prs.slide_width * 0.9)         title.left = int(self.prs.slide_width * 0.05)         title.top = int(self.prs.slide_height * 0.3)         title.height = int(self.prs.slide_height * 0.3)         title.text = self.contents.title         subtitle = slide.placeholders[1]         subtitle.width = int(self.prs.slide_width * 0.9)         subtitle.left = int(self.prs.slide_width * 0.05)         subtitle.top = int(self.prs.slide_height * 0.7)         subtitle.height = int(self.prs.slide_height * 0.2)         subtitle.text = self.contents.subtitle      def ContentPage(self, curr):         title_slide_layout = self.prs.slide_layouts[1]         slide = self.prs.slides.add_slide(title_slide_layout)         title = slide.shapes.title         title.text = "Contents"         tf = slide.placeholders[1].text_frame         tf.paragraphs[0].font.size = Pt(1)         for title in self.contents.sections:             p = tf.add_paragraph()             p.text = title             p.font.size = Pt(40)             if curr == self.contents.sections.index(title):                 p.font.color.rgb = RGBColor(175, 13, 21)      def PlainPage(self, page):         title_slide_layout = self.prs.slide_layouts[1]         slide = self.prs.slides.add_slide(title_slide_layout)         slide.name = str(page["name"])         title = slide.shapes.title         title.top = int(self.prs.slide_height * 0.1)         title.height = int(self.prs.slide_height * 0.1)         title.width = int(self.prs.slide_width * 0.7)         title.left = int(self.prs.slide_width * 0.3)         title.text = page["text"]         tf = slide.placeholders[1].text_frame         tf.paragraphs[0].font.size = Pt(1)         p = tf.add_paragraph()         p.text = page["text"]         p.font.size = Pt(24)      def AddPic(self, pageid, picfname, left, top, width=None, height=None):         for slide in self.prs.slides:             if slide.name == str(pageid):                 slide.shapes.add_picture(picfname, left, top, width, height)      def EditText(self, pageid, text):         for slide in self.prs.slides:             if slide.name == str(pageid):                 slide.placeholders[1].text_frame.paragraphs[1].text = text      def Save(self):         self.prs.save(self.pptx_fname)  if __name__ == "__main__":      pptx_fname = str(time.time()) + ".pptx"     templet_fname = "templet.pptx"     prs = Prs(pptx_fname, templet_fname, contents)      prs.Title()     for section in contents.sections:         prs.ContentPage(contents.sections.index(section))      prs.Save()     os.popen(pptx_fname)     


user avatar   nangao 网友的相关建议: 
      

曾经就这个问题跟我妈讨论过。

我说我这么要强这么独立,怎么可能找得到对象,现在男生都喜欢软软的什么都不懂的瓶盖都拧不开的笨笨傻傻的妹子呀,比如我表妹那种╮(╯▽╰)╭

我妈说:其实吧。。。。。如果我真的是那种什么都不会,什么事情都要你爸来做的女人,你爸早就跟我离婚了。

我妈的意思是,刚开始的时候,可能那种温温软软的妹子会很讨喜,但是过日子,如果什么都要依靠男方,短时间可能还好,几年过下来,早就烦了。而且生活中那么多事,那么多问题,如果女方一点忙都帮不上,还要添乱,这日子要怎么过。

像我妈这种女人,不仅自己工作上家庭上都可以处理得很好,还对我爸的工作有很大的帮助,我爸能在学校不用趋炎附势巴结领导,甚至还可以因为校长不公平的对待直接拍校长的桌子跟校长对骂,还一点事都没有继续当先进当优秀教师,年年带重点班,教书教的好是一方面,跟我妈在教育局工作不可能没有一点关系。
(因为曾经也有个老师跟校长有矛盾,后来被找了个借口调到农村的学校去了,而我爸骂了校长这么多年,从来没谁敢把他怎么样,顶多是没有升职的机会了╮(╯▽╰)╭)

我爸真的是典型的书读得迂腐了的那种人,特别清高,完全不懂变通,因为看不惯他们年级组长,他们年级的活动从来不参与。有一次他们校长开会碰到我妈,就跟我妈说,x老师从来不参加集体活动啊,不合群。我妈回来根本都没给我爸说,就偷偷告诉我了。
而我妈就是那种像水一样的女人,什么地方都可以淌过去,石头扔下去也只是泛起一点涟漪,包容我爸的一切,呵护着他的自尊心。而我爸也知道我妈很有能力,为这个家付出了很多,特别尊重我妈,偶尔闹脾气都像在撒娇。曾经有别的老师说我的父母就是典型的相敬如宾。

我一直觉得理想的夫妻关系就应该是这样,就像《致橡树》里那种,我跟你肩并肩站在一起,不依附你,也不会攀附你,更不会一厢情愿的奉献或者施舍,我们共担风险,共享繁华。

真羡慕啊。

真想找一个我妈那样的人。


========================分割线=========================


看评论感觉好像大家都觉得我母亲罩着我父亲,我父亲高攀了我母亲的感觉。
可能是我表述的问题吧,其实,你们想,我妈这种人,会去找那么特别废的男人过一辈子么╮(╯▽╰)╭

我爸当年高考,是全地区数学单科第一,总分第二的成绩考的重本(那所学校现在也是211,985),整个人心高气傲的不行——但是通常这种心高气傲的人活了这么多年还没被人打,多少还是有点本事的。

四川人嘛,娱乐活动就是打麻将打牌,我爸其实打得很好,因为他记得住牌!他能算牌!这简直就是外挂嘛!但是他很少打牌,一年中可能就过年那会陪家里亲戚玩几把。平时的娱乐活动,除了守着电脑打无比幼稚的小游戏,他没事,就!做!高!考!题!
市面上大部分教辅资料,都可以在他书架上找到。

我相信大家在读书期间对那种强迫学生补课的老师都是有了解的╮(╯▽╰)╭但是我爸他呀,最讨厌补课,每次有学生家长找他给孩子补课,他都给人家说:上我的课,课上四十分钟认真听就可以了,不需要补课。

他教的班,数学成绩从来都是年纪第一第二。

学生都很喜欢他,大概大多数学生,都不会讨厌一个:不拖堂,不骂人,不补课,有耐心,好脾气,认真教学,不请家长的老师。【我爸比学生还讨厌拖堂,下课了比学生跑得还快】

跟之前那个校长的矛盾也是,那个校长总是喜欢搞个大工程,从中牟利,完全不在教学上花功夫,所以我爸特别讨厌他和那几个学校的中高层领导,才不喜欢参加学校的活动的。
后来校长被双规了,判了十几年,中高层整个换了一拨,我爸又开开心心的去参加教研活动了╮(╯▽╰)╭
春天桃花开的时候还会跟他们去爬山。。。。。。。ORZ

说这么多其实想说我爸是个特别认真特别聪明的人,绝对不是不会社交的书呆子那种。

应该说,我父亲是一个比较纯粹的人,真诚,不做作,不媚俗,没有太多的欲望,不关心那些乱七八糟的事情的理想主义者。用我妈的话说就是象牙塔里生活了一辈子的人。

而这个象牙塔,很大程度上功劳要归我妈,我妈因为工作的关系,跟全市的所有中小学校长啊主任啊都很熟。可以说我妈把社会阴暗的那些东西,挡在了我爸看不到的地方。

这点真的太难得了!

所以我一直觉得我妈就是太宠我爸了,一直都是那种,出了事也没关系,我帮你想办法、帮你解决,再顺便嘲笑一下你 的那种。

然后我爸就是有点傲娇的那种,其实可心疼我妈了。我妈做了什么菜,问他好不好吃,他每次都说一般,还行这样,但是到外面去吃饭,他每次都说,还没你妈做的好吃(≖ ‿ ≖)✧就是这么口谦体正直。

最后附上致橡树。我啊,是真的觉得这种平等的、互相尊重、互相扶持、并肩前行、共同成长、精神上的契合 是最理想的相处模式了。

致橡树 舒婷


我如果爱你——


绝不像攀援的凌霄花,借你的高枝炫耀自己;


我如果爱你——


绝不学痴情的鸟儿,为绿荫重复单调的歌曲;


也不止像泉源,常年送来清凉的慰藉;


也不止像险峰,增加你的高度,衬托你的威仪。


甚至日光。


甚至春雨。


不,这些都还不够!


我必须是你近旁的一株木棉,做为树的形象和你站在一起。


根,紧握在地下;


叶,相触在云里。


每一阵风过,我们都互相致意,


但没有人,


听懂我们的言语。


你有你的铜枝铁干,


像刀、像剑,也像戟;


我有我红硕的花朵,


像沉重的叹息,


又像英勇的火炬。


我们分担寒潮、风雷、霹雳;


我们共享雾霭、流岚、虹霓。


仿佛永远分离,却又终身相依。


这才是伟大的爱情,


坚贞就在这里:


不仅爱你伟岸的身躯,


也爱你坚持的位置,脚下的土地。


user avatar   gao-tian-50 网友的相关建议: 
      

梁思申家庭,从剧中的暗示来看,应该是49年之前的上海工商业者。他们家至少他父母这一支还算是爱国的,49年之后并没有跑路而是留了下来,属于政治上靠得住的工商业者,文革之后被国家启用。

这样的家庭基本上在海外都有亲属,改革开放之后才重新联系上,这也是梁思申改革开放之后选择移民国外的原因之一。

梁思申自视甚高,她说自己没有歧视,但宋运辉说得对,她就是歧视了。她确实想促成中国的发展,但另一方面她心里已经内化了西方资本的逻辑,她认为中国要发展,做西方的附庸就是理所应当的。她并不知道,也没想过,为什么重点国企必须由中国掌握控股权的原因,也不在乎,只要她能完成这笔投资,受到老板的表扬,她的价值就实现了。

剧中对梁思申这一路人的小心思写的是很好的。这就是改革开放中华人华侨的真实想法。

她和宋运辉的矛盾,不是谁和谁斗气,或者性格冲突,而是根本立场不同。对梁思申来说,单子能谈成,中国市场开拓出来,她就实现了自己在美国人中的价值;但是对宋运辉,他就必须考虑中国化工几年甚至几十年之后的长远利益,为了这些利益,政治底线是不能退让的。

梁思申说自己受了歧视,实际上和宋运辉说的歧视并不是一回事。梁说的,是她作为美国华人所受到的种族歧视,这种歧视,宋和大部分中国人当然没有体会,也没有理由就要体会。毕竟梁还是要在美国社会混的,宋和大部分中国人不需要。

宋说的歧视,则是西方大公司利用自己的优势地位,并不把中国当做平等的合作伙伴,而是趁机控制中国的经济命脉。这点,梁实际上是不在乎的。毕竟,就算控制了又能怎么样?梁还是吃香的喝辣的,大不了回美国去。

对吉恩一路人来说,梁当然就是个工具。毕竟买办永远也不可能和老板真的平起平坐。

当然,梁思申并不坏,我相信她主观上也是想为中国好的。但是她长期受美国的教育,认为中国处处落后,美国的一定先进,所以自己有先天的权力去决定东海应该如何如何,还自以为是为中国好,实际上就是个二鬼子。

宋运辉也不傻,这点他肯定早就看透了,但是为了合资,一直到吃饭之前都没捅破。宋也一直在和日本还有其他公司联系,该摊牌就摊牌,可见也没有对梁这边报不切实际的希望。


大结局了补充一下:最后两集说明梁的层次还是比宋差远了。她以谈判为要挟,不仅救不了宋,而且会让上级部门更加怀疑宋和梁有不正当的交易。她以为靠自己就能扳动洛达,靠一个洛达就能改变党的组织原则。而她实际上就是个工具人,不可悲么?

最后她和宋的谈话,宋对她是大失所望的。本来吃饭的时候,宋以为她回来投资是为了帮助中国的建设,结果因为她自己的一点私心,说不投就不投了。她看得上的人就行,其他中国人统统不行。我相信随着改革的深入,梁思申这种人如果不改变自己看问题的方式,会走到完全西化派的路子上。


user avatar   ning-meng-ban-40 网友的相关建议: 
      

克劳备忘录也好,凯南电报也好,有两大共同点。首先,都是以现实主义的眼光去分析双方的关系。然后,给出的建议都是阳谋,并不是什么不可告人的阴谋,执行起来需要的不是鸡鸣狗盗的小聪明,而是惊人的意志力。

而美国现在战略界现实主义被边缘化,我推测,布热津斯基,基辛格那帮人应该写过不少。不过没所谓,美国能执行大战略的时代过去了。现在这一代精英上半年能管下半年就已经很了不起了。一个需要两代人以上持之以恒去完成的大战略,搞出来他们也执行不了。

冷战时期,从杜鲁门艾森豪威尔到肯尼迪尼克松,最后到李根老布什,个人性格和政治偏好差距不要太大,但是都忠实地完成了他们历史任务,沿着围堵政策做下去。这种战略定力和延续性,世间少见。在中国领导集团上能看见一些相似的东西,但是我们离得距离太近,反而看不清。但在美国精英层身上完全看不到这一点。

个人愚见。


user avatar   RickyFine 网友的相关建议: 
      

克劳备忘录也好,凯南电报也好,有两大共同点。首先,都是以现实主义的眼光去分析双方的关系。然后,给出的建议都是阳谋,并不是什么不可告人的阴谋,执行起来需要的不是鸡鸣狗盗的小聪明,而是惊人的意志力。

而美国现在战略界现实主义被边缘化,我推测,布热津斯基,基辛格那帮人应该写过不少。不过没所谓,美国能执行大战略的时代过去了。现在这一代精英上半年能管下半年就已经很了不起了。一个需要两代人以上持之以恒去完成的大战略,搞出来他们也执行不了。

冷战时期,从杜鲁门艾森豪威尔到肯尼迪尼克松,最后到李根老布什,个人性格和政治偏好差距不要太大,但是都忠实地完成了他们历史任务,沿着围堵政策做下去。这种战略定力和延续性,世间少见。在中国领导集团上能看见一些相似的东西,但是我们离得距离太近,反而看不清。但在美国精英层身上完全看不到这一点。

个人愚见。




     

相关话题

  如何开始学习 Rust 语言? 
  码农们最常说的「谎言」有哪些? 
  程序猿如何快速高效的改 bug?改bug都有哪些技巧? 
  结合深度学习的图像修复怎么实现? 
  多用组合少用继承中,接口继承算不算一种组合? 
  matlab如何模块化编程? 
  大一下要学C++,电脑安装不上net4.0,有什么在线编程网站可以尽可能替代VS,拿来练习。? 
  编程语言用let等关键字声明变量有什么好处? 
  语法糖dsl之类是否破坏代码风格? 
  作为一名程序员,最大的成就感来自哪里? 

前一个讨论
如何写一个web服务器?
下一个讨论
放生真的是行善吗?





© 2024-12-23 - tinynew.org. All Rights Reserved.
© 2024-12-23 - tinynew.org. 保留所有权利