精华内容
下载资源
问答
  •  知乎上有不少人问和关注阅读开源项目代码这个问题,比如「初学 Python,有哪些 Pythonic 的源码推荐阅读?...阅读Python开源项目代码主要有如下三个原因: 1. 在工作过程中遇到一些问题,Goo
    
    知乎上有不少人问和关注阅读开源项目代码这个问题,比如「初学 Python,有哪些 Pythonic 的源码推荐阅读?」、「github中适合新人阅读的Python项目有哪些?」、「如何去阅读并学习一些优秀的开源框架的源码?」等。本文将从推荐可阅读的Python项目和如何阅读者2个方面聊聊这个话题。

    阅读Python开源项目代码主要有如下三个原因:

    1. 在工作过程中遇到一些问题,Google和StackOverFlow等网站找不到解决办法,只能去翻源码。

    2. 对某些项目或者方向非常感兴趣,希望深入。

    3. 学习遇到瓶颈需要汲取开源项目的经验和用法来做提高。

    没有目的的阅读开源项目就是耍流氓。浪费了时间,但是能学到的东西也很少。怎么样根据自身情况去阅读呢?

    1. 和兴趣以及工作契合。举个例子,工作中没有机会用到Celery又不是想自己造个轮子,读它的源码做什么?所以要从平时能接触到的那些项目中选取。比如我,我肯定不去看Django的代码,因为日常工作基本遇不到,遇到了现翻就好了。

    2. 一个方向只看一两个典型的就可以了。比如Web框架,我只看过Bottle和Flask的源码(其实之前也看过Django的,只是浅尝辄止),而且看Bottle已经是好几年前的事情了。并不是堆的多了更好,有时候反而选择太多会懵。

    3. 不同技术阶段的选择代码量、复杂度不一样的项目,下面会具体推荐。

    4. 清楚自己看代码的目的。就是你看代码是想了解人家怎么设计、调试BUG、还是只是想学习正确的编程用法呢?其实没有必要细抠每个代码细节,有时候当黑盒看,知道输入输出就可以了。

    我个人的喜好

    和工作中看别人代码差不多,基本每个人、每个项目、每个团队都有自己写代码的风格,比如变量命名风格、某些语言特性使用方式、代码规范要求、目录风格等,其实开源项目的作者也是一样。看代码,如看人(团队)。 首先介绍下我的喜好(排名分先后):

    1. kennethreitz。requests和python-guide作者。他还有一个非常励志的故事,有兴趣的可以看 谁说程序员不是潜力股?

    2. mitsuhiko。flask、Jinja2、werkzeug和flask-sqlalchemy作者。

    3. sigmavirus24。flake8、pycodestyle(原pep8)、requests、urllib3等项目的主要贡献者和维护者。

    4. ask。Celery及相关依赖的作者。

    5. ajdavis。mongo-python-driver(pymongo)、tornado等项目的主要贡献者。

    6. bitprophet。fabric、paramiko(Python的ssh库)作者。

    前2个是公认的Python领域代码写的最好的、最有创意的工程师。

    初学者推荐阅读项目

    初学者可以先阅读一些代码量比较少的,最好是单文件的项目:

    1. GitHub - kennethreitz/pip-pop: Tools for managing requirements files.

    2. GitHub - kennethreitz/envoy: Python Subprocesses for Humans™.

    3. GitHub - kennethreitz/records: SQL for Humans™

    4. GitHub - mitsuhiko/pluginbase: A simple but flexible plugin system for Python.

    5. GitHub - mitsuhiko/pipsi: pip script installer

    6. GitHub - mitsuhiko/unp: Unpacks things.

    7. GitHub - chrisallenlane/cheat

    8. GitHub - jek/blinker: A fast Python in-process signal/event dispatching system.

    9. GitHub - mitsuhiko/platter: A useful helper for wheel deployments.

    10. GitHub - kennethreitz/tablib: Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &c.

    看代码主要是了解别人写代码的方式,语法实践这些内容。看完之后,你可以针对这些项目能解决的问题自己写个项目,写完之后和上述项目去对比一下,看看哪些方面做的不好。

    进阶阅读项目

    进阶的时候就要阅读一些相对复杂的项目,它们能帮助你提升Python编程技巧:

    1. faif/python-patterns。使用Python实现一些设计模式的例子。

    2. pallets/werkzeug。flask的WSGI工具集。其中包含了实现非常好的LocalProxy、cached_property、import_string、find_modules、TypeConversionDict等。

    3. bottlepy/bottle。阅读一个Web框架对Web开发就会有更深刻的理解,flask太大,bottle就4k多行,当然如果你有毅力和兴趣直接看flask是最好了的。

    4. msiemens/tinydb。了解用Python实现数据库

    5. coleifer/peewee。了解ORM的实现。

    6. pallets/click。click已经内置于在flask 0.11里,提供命令行功能,值得阅读。

    7. mitsuhiko/flask-sqlalchemy。了解一个flask插件是怎么实现的。

    除此之外Web开发者可以阅读一些相关的项目:

    1. runscope/httpbin。使用flask,网站是httpbin(1): HTTP Client Testing Service

    2. jahaja/psdash。使用flask和psutils的获取Linux系统信息的面板应用。

    3. pallets/flask-website。 flask官方网站应用。

    4. pypa/warehouse。如果你使用pyramid,这个新版的PYPI网站,可以帮助你理解很多。

    当然,2个学习flask重要的资源必须爆一爆:

    1. GitHub - realpython/discover-flask: Full Stack Web Development with Flask

    2. The Flask Mega-Tutorial。 这个就是《Flask Web开发:基于Python的Web应用开发实战》的原始博客。

    500lines

    推荐一个非常厉害的项目 GitHub - aosabook/500lines: 500 Lines or Less, 它里面包含了22个由该领域的专家完成,用不到500行的代码实现一个特定功能的子项目。连Guido van Rossum都亲自来写基于asyncio爬虫了,Nick Coghlan、ajdavis也出场了。更具体的介绍可以看Python 的练手项目有哪些值得推荐? - 小小搬运工的回答


    怎么阅读开源项目源码

    我基于个人兴趣和日常开发需要阅读过一些开源项目,我列一些比较通用的经验和感悟:

    1. 不要畏惧。我发现大家都经常会感叹XXX强大,YYY流行,无形中你会把它放在一个不可触及到的地位,感觉它很难,而令自己不敢去挑战它。其实是人就会产出bug,假如你发现它有问题,就应该抓住机会去验证它。这个过程中,它的神秘感也就消失了,有过这么几次经验你就有信心了。其次是不要怕你提交的PR被拒绝。这是非常正常的,我有很多PR是被拒绝的,尤其是给标准库提交的Patch,绝大多数都被拒绝了。

    2. 带着问题去阅读代码,这也是我认为最有效的方式。这会让你在阅读时候有个主线,比较有针对性。

    3. 断点调试。在Python代码中使用pdb一般不太好使,因为代码复杂的话,这种断点需要你使用多个n跳到对应的位置,我一般都是先抛出异常,然后使用pdb的up/down/n等命令调试。当然在目标位置添加一些print日志或注释部分代码然后直接使用exit()退出也是可以的。

    4. 善用文档,官网例子。阅读一个项目一开始会有点无从下手,那么就先好好这些内容,它们一般都是作者表达这个项目的第一个入口。quickstart、tutorial等内容中的最小化的例子其实就是最好的阅读入口,先去看这些引用的模块和调用的对应方法或者函数的对应实现,从下至上去阅读。

    5. 理解作者的思考方式。不同的项目要有不同的思考方式来阅读,不要拧着自己的习惯去阅读,这样会很累,得尝试接受别人的观点,甚至于改变自己。

    6. 阅读项目的早期版本。一些项目随着时间演进已经非常复杂了,读起来有难度,那么你可以回到项目的早期版本上,先去看相对简单地版本,然后设置几个时间点或者版本节点,渐进的来阅读。

    7. 记忆并绘制项目架构项目就是一堆代码的组合,除了学习编程技巧,还要了解项目的架构决策,这对于未来自己写大型项目非常用用。这种理解越补充,你会对它就越来越清晰。

    8. 参与。如果只是看和思考而不参与,其实效果大打折扣。我建议要参与一些issue讨论、向作者提问、提PR添加新的功能、帮助改善文档等等。很多时候你理解的其实和作者是有冲突的,无论是你说服他和被他说服,对自己的成长都是很有帮助的。

    展开全文
  • 今天我就结合受欢迎程度、参与度和新近度等指标给大家推荐5个Python开源项目,希望这些开源项目能给大家的工作和学习带来新的启发和帮助。 推荐一:Pytext—Facebook AI 的工业级 NLP 开源框架 PyText是一个基于...

    最近小编发现很多朋友对Python的关注度非常高,也有很多Python初学者在后台留言领取相关学习教程。今天我就结合受欢迎程度、参与度和新近度等指标给大家推荐5个Python开源项目,希望这些开源项目能给大家的工作和学习带来新的启发和帮助。

    推荐一:Pytext—Facebook AI 的工业级 NLP 开源框架

    PyText是一个基于PyTorch构建的基于深度学习的NLP建模框架。它是 Facebook正在使用的主要自然语言处理(NLP)建模框架,目前每天为 Facebook及其应用程序系列的用户提供超过10亿次AI任务处理。PyText解决了实现快速实验和大规模服务模型的冲突问题: 提供简化的工作流程,加速实验。 提供一大批预构建的模型架构和用于文本处理和词汇管理的工具,以促进大规模部署。 提供利用PyTorch生态系统的能力,包括由NLP社区中的研究人员、工程师预构建的模型和工具。

    推荐二:Jax—Google开源TensorFlow 简化库

    Jax 结合了Autograd和XLA,基于XLA在GPU和TPU上编译和运行 NumPy程序,实现了硬件加速,同样的数学运算,用JAX版的numpy可以加快30-40倍。Jax还可对包含多个numpy运算的函数通过jax.jit()进行 JIT(just-in-time) 编译,进一步加快运算速度。jax.grad()支持自动微分(autodiff),为反向传播(backpropagation)训练模型提供了基础。

    推荐三:Reaver—星际争霸II深度强化学习代理

    Reaver是一个深度强化学习代理,专为训练各种基于星际争霸II的任务设计。主要旨在跟随DeepMind的脚步,通过玩具有类似人类界面和限制的现代视频游戏这一角度切入,推动该领域的最新技术。Reaver背后的理念类似星际争霸II游戏本身——为不同水平玩家提供不同体验。对于业余爱好者程序员,Reaver通过仅修改代理的一小部分来提供训练DRL代理所需的所有工具。对于经验丰富的研究人员,Reaver提供简单但性能优化、模块化架构的代码库,代理,模型和环境是分离的,可以随意置换。

    推荐四:image-super-resolution—残差密集网络(Residual Dense Network)图像超分辨率的Keras实现。

    该项目旨在在低分辨率(LR)测量的基础上生成视觉良好的高分辨率(HR)图像,使用2018年美国东北大学提出的残差密集网络进行图像超分辨率,该网络结合残差网络与密集连接网络的特性充分利用原始LR图像的所有分层特征,因而能重构出高质量的图像。项目提供了一个Keras网络实现,并设置了一个Docker镜像来进行训练和测试。只需几个命令,就可以使用AWS和 nvidia-docker在本地或云上进行训练。

    推荐五:bert-as-service—用BERT模型将可变长度语句映射到固定长度的向量

    BERT是由Google开发的NLP预训练模型,全称 Bidirectional Encoder Representation from Transformers,即对Transformer的双向编码进行调整后的算法。它利用网上公开提供的大量纯文本数据,进行非监督训练。它的神经网络深而窄,可以在无需大幅架构修改的前提下进行双向训练。BERT模型还能够联合神经网络所有层中的上下文来进行训练,且只需微调就可以适应很多类型的NLP任务,可谓是开启了NLP新时代的最强NLP模型。bert-as-service使用BERT作为语句编码器并通过ZeroMQ将其作为服务托管,只用两行代码就可将句子映射到固定长度的表征。

     

    最后是Python福利时间,

    8套Python学习视频教程领取方式:传送门,备注CSDN即可

     

    展开全文
  • 最近在考虑自己写一个Python开源项目,之前很少接触因此无从下爪,于是在Github上面找了一些适合初学者的练手项目,但面对诸多的代码文件也是有点头疼...所以特地整理了别人对于开源项目学习的建议。以下列出来,...

    最近在考虑自己写一个Python开源项目,之前很少接触因此无从下爪,于是在Github上面找了一些适合初学者的练手项目,但面对诸多的代码文件也是有点头疼...所以特地整理了别人对于开源项目学习的建议。以下列出来,希望能帮到跟我有同样需求的人。

    Tips 1.
    作者:lazysong
    链接:https://www.jianshu.com/p/c424b3c8876d
    来源:简书

    首先,我们需要看一下这个开源项目是做什么的,是为了实现什么需求

    然后我们思考一下,如果我们自己来实现这个需求,会采用哪些思路,各有什么优缺点

    接着我们就可以看一下这个项目采取的解决方案使用了什么思路,具体是怎么做的。

    很多比较成熟的开源项目其实都比较复杂,所以在学习的时候我们需要注意,不要钻牛角尖,抱着一个细节的点一点点抠。
    一层层扣下去,最后容易完全迷失掉方向。比较推荐的方式是,抓住主干,先找到这个项目的入口,然后大粒度地去看这个项目的处理思路,大致流程。中间肯定会有很多疑惑,很多相关的知识点不清楚,但是没有关系,一些细节的地方我们可以先记下来,然后大致了解一下,或者暂时放一放。等我们大致能把整个项目的处理框架搞清楚了,接下来才可以考虑进一步研究一些实现的细节。

    最后我们可以基于我们对这个项目的了解,自己实现一个类似的简单的项目,可能很多细节方面没有那么完善,但是大致的思路是一致的。

    Tips 2.
    作者:javaniu
    链接:https://www.zhihu.com/question/19637879/answer/51507188
    来源:知乎

    >>> 如何快速了解一个开源项目并投入使用?

    1.首先,查找和阅读该项目的博客和资料,通过google你能找到某个项目大体介绍的博客,快速阅读一下就能对项目的目的、功能、基本使用有个大概的了解。


    2.阅读项目的文档,重点关注类似Getting started、Example之类的文档,从中学习如何下载、安装、甚至基本使用该项目所需要的知识。


    3.如果该项目有提供现成的example工程,首先尝试按照开始文档的介绍运行example,如果运行顺利,那么恭喜你顺利开了个好头;如果遇到问题,首先尝试在项目的FAQ等文档里查找答案,再次,可以将问题(例如异常信息)当成关键词去搜索,查找相关的解决办法,你遇到了,别人一般也会遇到,热心的朋友会记录下解决的过程;最后,可以将问题提交到项目的邮件列表,请大家帮你看看。在没有成功运行example之前,不要尝试修改example。


    4.运行了第一个example之后,尝试根据你的理解和需要修改example,测试高级功能等。


    5. 在了解基本使用后,需要开始深入的了解该项目。例如项目的配置管理、高级功能以及最佳实践。通常一个运作良好的项目会提供一份从浅到深的用户指南,你并不需要从头到尾阅读这份指南,根据时间和兴趣,特别是你自己任务的需要,重点阅读部分章节并做笔记(推荐evernote)。


    6.如果时间允许,尝试从源码构建该项目。通常开源项目都会提供一份构建指南,指导你如何搭建一个用于开发、调试和构建的环境。尝试构建一个版本。


    >>>如何阅读源码?

    (1)阅读源码之前,查看该项目是否提供架构和设计文档,阅读这些文档可以了解该项目的大体设计和结构,读源码的时候不会无从下手。
    (2)阅读源码之前,一定要能构建并运行该项目,有个直观感受。
    (3)阅读源码的第一步是抓主干,尝试理清一次正常运行的代码调用路径,这可以通过debug来观察运行时的变量和行为。修改源码加入日志和打印可以帮助你更好的理解源码。
    (4)适当画图来帮助你理解源码,在理清主干后,可以将整个流程画成一张流程图或者标准的UML图,帮助记忆和下一步的阅读。
    (5)挑选感兴趣的“枝干”代码来阅读,比如你对网络通讯感兴趣,就阅读网络层的代码,深入到实现细节,如它用了什么库,采用了什么设计模式,为什么这样做等。如果可以,debug细节代码。
    (6)阅读源码的时候,重视单元测试,尝试去运行单元测试,基本上一个好的单元测试会将该代码的功能和边界描述清楚。
    (7)在熟悉源码后,发现有可以改进的地方,有精力、有意愿可以向该项目的开发者提出改进的意见或者issue,甚至帮他修复和实现,参与该项目的发展。

    大家的建议都基本遵循这个步骤,所以先贴到这里。之后的一段时间我整理一些适合初学者的python开源项目,记录阅读进度,并仔细思考该如何进行自己的项目。

    Have a nice day :) .

    展开全文
  • 2019独角兽企业重金招聘Python工程师标准>>> ...

    每月新增开源项目。顾名思义,每月更新一期。我们会从社区上个月新收录的开源项目中,挑选出有价值的、有用的、优秀的、或者好玩的开源项目来和大家分享。数量不多,但我们力求推荐的都是精品。目前这些开源项目主要来源于编辑们的搜集和用户的投递,所以如果你有更好的开源项目推荐,欢迎积极投递。

    戳这里查看投递软件的正确姿势 >>> https://www.oschina.net/question/2918182_2266982

    Web Forever —— Web 开发项目推荐

    oracle/helidon Helidon —— 甲骨文推出的轻量快速 Java 微服务框架

    081716_F8aU_2720166.png

    目前关于 Java 微服务框架的选择十分多,老牌的诸如 Spring Cloud, Thrift, ZeroC, Dubbo 等,新生的也有 Micronaut。本文推荐的 Helidon 是甲骨文打造的一个微服务框架,这是一个用于编写微服务的 Java 开源库,这些微服务运行在由 Netty 提供支持的快速 Web 内核上。Helidon 已正式加入 Eclipse MicroProfile。

    示例代码

    MicroFramework

    WebServer.create(
      Routing.builder()
        .get("/greet", (req, res)
           -> res.send("Hello World!"))
        .build())
      .start();

    MicroProfile

    public class GreetService {
      @GET
      @Path("/greet")
      public String getMsg() {
        return "Hello World!";
      }
    }

    甲骨文的高级软件开发经理和 Helidon 项目负责人 Dmitry Kornilov 讲述了 Helidon 诞生的初衷:“当我们进入云世界时,微服务架构开始变得非常受欢迎,它们主要被用于创建云服务。我们也意识到需要改变开发体验,我们可以使用 Java EE 构建微服务,但最好有一个框架从头开始就是设计用于构建微服务的。我们还希望创建一组轻量级的库,它们不需要应用程序服务器,并且可以在 Java SE 应用程序中使用。这些库也可以彼此分开使用,但是当一起使用时,将为开发者提供创建微服务所需的一切东西:配置、安全性和 Web 服务器。这就是 Helidon 诞生的初衷。”

    Useful Tool —— 实用开发工具推荐

    Education tools/thonny Thonny —— 面向初学者的 Python IDE

    可供 Python 开发者选择的开发工具并不多,主流的选择普遍是 Visual Studio Code,愿意花钱的开发者可能会选择 PyCharm。但对于新手而言,PyCharm 称不上是一个“友好”的选择 —— 不仅显得过于“臃肿”,还是一个收费的软件。而 Visual Studio Code 对于初学者又有一定的学习曲线,因此下面就为大家介推荐一款专门面向初学者的 Python IDE。

    Thonny 是一个面向初学者的 Python IDE,由爱沙尼亚的 Tartu 大学开发,它采用了不同的方法,因为它的调试器是专为学习和教学编程而设计的。Thonny 界面简洁,十分易于上手,还支持插件。因为它是面向初学者的,所以删除了可能会分散初学者注意力的所有功能。

    141044_xzNa_2720166.png

    Thonny 内置 Python 3.7,因此只需要一个简单的安装程序,我们就可以开始学习编程了(如有必要,还可以使用单独的 Python安装)。

    sourcegraph/sourcegraph Sourcegraph —— 知名流行的代码搜索浏览工具

    Sourcegraph 被大众广为熟知正是因为它支持在 GitHub 上轻松浏览和搜索代码,Sourcegraph 这款 Chrome 插件称得上是开发者必备的插件,它可以让我们像使用 IDE 一样浏览和搜索 GitHub 代码。

    165323_tcsw_2720166.png

    Sourcegraph 是一款能够根据语义来把 Web 上的开源代码编入索引的代码搜索浏览工具,提供代码搜索和代码语义智能感知功能。

    通过它,你可以从代码仓库和安装包,甚至是函数里搜索代码,同时也可以直接点击被完全创建了链接的代码来阅读文档、跳转到变量定义或者马上找到可用的 Demo。

    总而言之,你可以在你的 Web 浏览器上完成这一切,而不需要配置任何编辑器。由 Sourcegraph 出品的这款 Chrome 插件,可以非常方便地浏览和搜索 GitHub 上的代码,持跨仓库(repository)搜索、跳转到定义、查找引用等功能,宛若一个功能强大的 IDE。核心功能如跳转到定义(Go-to-definition) —— 浏览文件或查看 pull 请求时,将鼠标悬停在代码上可以查看文档提示,单击即可跳转到定义、查找引用或全文搜索。

    Funny OSS — 有趣的开源软件

    rwv/chinese-dos-games 中文 DOS 游戏 —— 使用浏览器玩中文 DOS 游戏

    “情怀”两个字近年可以说是已经被用烂了,甚至在某些时候还包含着贬低的意味。但本文推荐的这个开源项目确实十分有情怀,大写赞美的情怀。

    104810_7nPH_2720166.png

    准确来说,这是一个汇集了大量中文 DOS 老游戏的站点(大航海时代、三国志、仙剑奇侠传……都是满满的回忆)。只要打开这个网站,就能直接在浏览器开玩。

    项目原理并不高深,它在 GitHub 已有项目的基础上,将中文 DOS 游戏封装成网页应用。相比各类模拟器、虚拟机,这个网站的特别之处在于,玩家只需打开网页点击某款游戏,便可直接在浏览器里开始游玩,没有安装、配置的一套流程,还支持存档,非常方便。

    Microsoft/MS-DOS MS-DOS —— 微软早期推出的磁盘操作系统

    MS-DOS 是微软早期推出的磁盘操作系统,最初由西雅图公司(Seattle Computer)开发并命名为 86-DOS 。微软在1981年7月将 86-DOS 的版权和其他所有权买断,并将其改名为 MS-DOS 向市场发布。这也是微软赖以发迹的第一个成功的操作系统产品。

    2014年3月,微软通过计算机历史博物馆公开发布了 MS-DOS 1.25 和 2.0 版本的源代码。2018年9月28日,微软将这两个版本在 GitHub 重新开源,以供那些对早期 PC 操作系统感兴趣的开发者进行探索和实验。

    一些有意思的事情:

    1. MS-DOS 1.25 和 2.0 的所有源码都是用 8086 汇编写的;

    2. 86-DOS 初始版本的源码可以追溯到1980年12月29日左右;

    3. MS-DOS 1.25 的代码编写于1983年5月9日左右,由7个源文件组成,包含原始的 MS-DOS Command-Line shell - COMMAND.ASM ;

    4. MS-DOS 2.0 的代码可以追溯到1983年8月3日左右,并且在复杂程度(和团队规模)方面有相当大的增长,包含 100 个 .ASM 文件;

    5. 储存库中有一些非常有趣的文档(.TXT,.DOC),很多都值得一读,许多注释也是如此!

    不过,微软强调,本次开源只为历史参考目的,让那些对早年 PC 操作系统感兴趣的用户去重新探索和试验,代码不会再做任何改动,大家也不要提出修改请求。微软同时透露,MS-DOS 1.25、2.0 的所有源代码都是用 8086 汇编代码写的,其中 86-DOS 的代码最初完成于1980年12月29日。

    Deep Learning —— 深度学习项目推荐

    deeppomf/DeepCreamPy DeepCreamPy —— 使用深度神经网络去除马赛克

    开发者为了更好地鉴赏艺术作品可谓是无所不用其极,此前我们曾推荐过一个开源项目 faceswap,这是一款基于深度学习技术的工具,用于识别和交换图片、视频中人物的脸部图像。具体的介绍这里不再赘述,感兴趣的话可以点进去深入了解。

    这次为大家介绍一款更神奇的项目 —— 通过使用深度神经网络技术去除马赛克。一位化名为 deeppomf 的开发者用深度神经网络训练和开发出了一个能去除马赛克并让原图重现的工具:DeepCreamPy。

    使用该工具的方法十分简单,用户在单独的图像编辑程序(如 GIMP 或 Photoshop)中打开图片,在需要去除马赛克的部位画上一条绿线,运行程序让它自动复原即可。

    212333_9jlk_2720166.png

    不过目前该工具的局限性比较大,只能完成一些简单的复原。当然,开源之后有了更多开发者的贡献,功能应该会有更大的改进。

    本期的推荐到此结束,更多有趣有料的开源软件尽在开源中国社区等你来发现~!

    最后,欢迎关注【开源中国】微信公众号(ID: oschina2013),获取更多技术干货和第一手开源资讯

    转载于:https://my.oschina.net/editorial-story/blog/2876261

    展开全文
  • python scrapy开源项目学习

    千次阅读 2013-05-06 14:34:20
    定制网络蜘蛛,现成的用Python写的开源项目scrapy,下载源代码,在Linux系统安装。然后就可以用了。 这个项目的架构不是怎么复杂,但作为Python初学者,看到这个项目的这么多代码,彻底晕了。俗话说,万事开头难...
  • 其实初学者大多和题主类似...这个阶段最主要的学习方法还是多看多练,可以多阅读一些开源项目代码然后找一些合适的项目来练手,以下是我收集整理的针对Python初学者的小项目及练习。* 开源项目1.Requestsrequests/re...
  • 对于初学者练习的6个开源项目

    千次阅读 2016-12-29 08:58:13
    OpenStack的 - 免费开源的平台,为云计算,主要部署在服务模式基础架构即服务(IaaS)。该项目开始被提NASA和Rackspace早在2010年,但此后该项目已加入了500多家企业,其中包括硅谷巨头。要开始作出贡献的项目,您只...
  • GitHub 上适合新手的开源项目Python 篇)

    千次阅读 多人点赞 2020-11-09 10:44:03
    Python 初学者在迈过安装编程环境和基本语法的门槛 ,准备大展身手的时候,可能突然就会进入迷茫期:不知道做些什么、再学些什么。然后对编程的兴趣就会慢慢消退,找不到坚持下去的理由,从而慢慢淡忘之.
  • Python无处不在 ,似乎它支持从主要网站到桌面实用程序到企业软件的所有功能。... 它是少数几种语言之一,初学者很容易就可以开始,而初学者毕业于现实世界的项目时却非常强大。 很多人学习python
  • 项目收集了一些各大网站登陆方式和一些网站的爬虫程序,有的是通过selenium登录,有的是通过抓包直接模拟登录,有的是利用scrapy,希望对Python初学者有所帮助,本项目用于研究和分享各大网站的模拟登陆方式和爬虫...
  • 这段时间学了python,对于python这种优雅简洁的语言深深吸引,在网上看到一个github上的开源项目,觉得比较有意思,就自己研究一番,现将结果记录下来,以志自己这一路学习走来的历程。 因为python初学者对于python...
  • 其实初学者大多和题主类似...这个阶段最主要的学习方法还是多看多练,可以多阅读一些开源项目代码然后找一些合适的项目来练手,以下是我收集整理的针对Python初学者的小项目及练习。* 开源项目1.Requestsrequests/re...
  • 介绍 今天我要开始一个关于Django基础知识的新教程。这是开始学习Django的完整初学者指南。材料分为七个部分。...对于初学者来说,它是一个Python Web框架,这意味着您可以从众多开源库中受益。 Django是用...
  • [开源]django+python的个人博客项目

    千次阅读 2018-09-04 18:41:29
    适合人群:初学者 已实现:个人博客的基本功能 待完善:服务器和页面更多功能的完善 github仓库:https://github.com/17688832018/blog 主要参考”追梦人物”的个人博客教程:https://www.zmrenwu.com/post/2/ ....
  • 十分钟快速入门 Python: 本文以 Eric Matthes 的《Python编程:从入门到实践...100多位经验丰富的开发者参与,在 Github 上获得了近1000个star的开源项目想了解下吗? 项目地址:github.com/cachecats/c… 免费领...
  • QPython已经在全球拥有数百万的用户,并且它也是一个开源项目。 对于不同的使用场景,QPython有两个分支,即QPython Ox和3x。 QPython Ox主要针对编程学习者,它为初学者提供了更友好的功能。 QPython 3x主要面向...
  • 项目的目的是帮助初学者开源方面做出的贡献,并将所有可能的机器学习算法和Python融合在一起。 我们旨在以协作的方式实现这一目标,因此请务必按照贡献准则进行贡献。 什么是开源开源社区为有抱负的程序员...
  • Mybridge AI 将github上的每个Python项目根据分享总数,读取的分钟数等特征,并用他们的算法计算出了以下2019年7月的十大开源项目。这些项目可能对你的技术生涯会很有帮助。 1. 使用树莓派和Python构建机器人,初学...
  • 遵循教程:通过专门针对初学者的教程,从基础级别开始学习python编程语言,以更快地学习python编程语言。 阅读文章:阅读有关python编程语言的最新和最受欢迎的文章,涉及多个主题。 由社区创建并用于社区的文章。 ...
  • 该游戏可帮助初学者以有趣而轻松的方式学习阅读乐谱。 更具体地说,此游戏旨在学习仅限于高音谱号的乐谱,并(可选)为高音谱号的人员进行耳部训练。在此panda3D游戏项目中,该项目由5个程序组成,一个程序用于处理...
  • 初学者-源码

    2021-02-04 03:51:43
    该存储库供任何人在实践... 我的爱好包括学习编码,学习如何使用github和学习为开源项目做贡献。 傻瓜 我上高中时,我认为javascript是最好的语言...好吧,我也有点像python。 古尔姆兰 我是一个留在印度的程序员 我为
  • :face_with_monocle: 面向初学者的超酷Python项目集合!! :sparkles: 该项目是#Build with LetsUpgrade 2020的一部分 :footprints: 开源竞赛-使用LetsUpgrade 2020构建 关于Build with LetsUpgrade 2020 :laptop:...
  • flythereddflagg.github.io 我是Mark Edward Redd。 以下是有关我正在从事的一些开源项目的信息的链接。 专案 :显示我的简历的网站 :一本免费的书,可以教初学者学习Python和入门计算机科学 发布的的 待定
  •  无论你是编程初学者,还是专业开发人员,本书的目标是让你快速掌握核心Python语言基础。阅读本书后,你会对Python有足够的了解,能够将其应用于所从事的领域中。  本书设计成一本教程,主要关注核心Python语言...
  • 它使用xml+xslt的方式解析成HTML页面,并且循续渐近式的介绍每种(比较大众化的,目前收录了 C++ , JavaScript, Objective-C , 和Python )编程语言 . ...可以作为内部培训资料或是初学者使用. 样例: Backgr...
  • 0716更新:1、新手练习2、提升项目syncPlaylist:在网易云音乐与...pandas-tutorial:这套 pandas 教程包含从初级到进阶的内容,适合初学者和希望进阶建立知识体系的数据科学从业者阅读。ItChat:开源的微信个人号SD...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 200
精华内容 80
关键字:

python开源项目初学者

python 订阅