刚接触Python的人应该了解它的社区和生态系统吗?

2024-04-26 06:10:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我是在拼凑一些关于Python的介绍,但重点是Python的社区和生态系统,而不仅仅是Python语言。有了《如何像计算机科学家一样思考》和其他很棒的教程,很容易熟悉这门语言,但我花了很长时间才知道奶酪店,或者说,PyPi是关于什么的,pip和virtualenv是如何工作的,为什么应该使用它们,你应该去哪里寻求帮助,你应该关注的有趣的博客,你的代码应该是怎样的(pep8,编写python代码)等等。“软的东西”。在

刚开始使用Python时,您最困惑的是什么?是否有某些事情你会想知道,或资源,你希望你已经偶然发现比你早?要了解的人?在

我在StackOverflow上发现了一些类似的问题(例如here),但没有什么真正接近我想从你们那里听到的问题。希望这个问题对你的口味不要太主观:-)

(如果你想帮忙的话,可以随时留言。)


Tags: pip代码pypi语言重点virtualenv计算机教程
3条回答

我认为对于Python生态系统,初学者需要了解的最重要的一点是,Python生态系统是一种由专门的lib包围的通用语言。经验丰富的Python知道它们,但新手不能:

  • 不要停下来:去wxgtkqt。在
  • 不要手工开发web代码:使用TurboGearsPylonsWeb.py或{a7}。在
  • 不要用硬工具解析HTML/XML:使用lxmlbeautifulsoup。在
  • 不要对imagemagik进行系统调用:使用PIL。在
  • 不要手工做高等数学:使用NumPySciPy。在
  • {a1}不要用简单的数据库。在
  • 不要重新设计系统管理控制盘:使用Fabric。在
  • 等等

主要的应该列在一本书中,并有指导性的选择。在

“刚开始使用Python时,最让你困惑的是什么?”在

学习Python的规则2:任何你认为你想要的通用模块或框架都已经编写好了。几次。

最困难的是要意识到你的想法

  1. 不是独一无二的。

  2. 在你开始思考之前就已经改进了。

  3. 已经贴到某个地方了。

所以,少编代码,多搜索。广泛而灵活地搜索,直到找到与你想做的事情相似的事情。在

  • 意识到你可能有一个你认为是描述性的名字。但其他人可能会称之为不同的东西。加入社区,采用他们的名字。你可能不喜欢“ORM”这个词,但它就是这么叫的。

  • 意识到你的想法,不管它看起来多好,可能真的很糟糕。当你发现一个似乎有“不必要的额外特性”的框架时,你可能会从你的想法中漏掉一些东西。

  • 意识到你的想法,不管它看起来多么“直观”,可能真的很糟糕。当你发现一个似乎“反直觉”的框架时,问题可能就在你的身上。先学他们的,掌握了他们的后再对比。在你掌握了他们之前,继续寻找和学习。

与生态系统和社区间接相关的几点:

  • 我真希望能提醒我更多关于Batteries included。我认为应该告诉人们把Table of Contents of the Standard Library打印出来,放在枕头底下,以便经常评论(这个建议,我最后花了几年时间,从一个在线介绍/初学者的视频演示中得到的)。Std-Lib的[相对]稳定性、广泛但相关的内容说明了社区领导人及其所钟爱的BDFL的深思熟虑的治理。

  • 我认为新来者也可以对PiPy的极端多样性“警告”(这个词可能太强了,太不公平了)。这反映了用户和贡献者的活跃、智能和多样性(在背景、应用领域、兴趣等方面)。“尽管如此,我的生命中还有很多时间是可以挽救的”。

  • 即使您对Python太陌生了,也不要只使用库,一定要偷偷看看!这在许多语言中都是如此,但可能特别是Python,从阅读各种源代码中可以学到很多东西。对于Python来说,这一点可能特别正确,这是语言本身固有的原因(多范式、高抽象级别……),但也因为编码(和架构)风格的相对一致性以及社区内的一般协作级别。

相关问题 更多 >