14

我已经掌握了 Python 的基础知识,并且有一个小假期,我想利用其中的一些时间来学习更多 Python。问题是我不知道该学什么或从哪里开始。我主要从事网络开发,但在这种情况下,我不知道它会产生多大的影响。

4

10 回答 10

16

好吧,高级 Python 编程有很多资源:

如果您想在简历上写“Python”,以下是您必须掌握的科目列表:

它们使 Python 成为如此酷的语言(当然还有标准库,我每天都在发现)。

于 2008-09-18T13:01:53.463 回答
5

根据您所说的“掌握基础知识”的确切含义,我建议您通读Dive Into Python并键入/执行所有章节代码,然后获得像Programming Collective Intelligence之类的东西并完成它 - 你会学到python 非常好,更不用说一些非常优秀的算法,它们对 Web 开发人员来说会派上用场。

于 2008-09-18T12:58:50.740 回答
3

The Python Challenge是一个很好玩的东西,虽然不是一个项目。我发现它在提高我的 Python 技能方面非常有用,同时它可以让你的大脑得到很好的锻炼。

于 2008-09-18T12:56:33.337 回答
2

我真的很喜欢Programming Python 这本书。它有各种各样的小项目,其中大部分可以在一个晚上悠闲地完成。它们使您熟悉大多数标准库,并且可能会引起您的兴趣。最重要的是,这些小项目实际上在“日常”意义上是有用的。这本书几乎只假设您了解并理解 Python 作为一门语言的基本要素,而不是了解它庞大的 API 库。

我想你会发现它非常值得努力。

于 2008-09-18T12:57:32.897 回答
2

我将在 Python 中插入 Building Skills。另外,如果您想要更具挑战性的东西,OO 设计中的构建技能是一个相当大且复杂的系列练习。

于 2008-09-18T13:23:41.103 回答
2

如果您想掌握惯用的 Python,Python Cookbook绝对是必不可少的。此外,那本书让我爱上了这门语言。

于 2008-09-18T13:49:59.777 回答
1

我建议使用 Django 或 Pylons 编写一个重要的 web 应用程序,这会进行一些数字运算。没有比让自己解决问题并边走边学更好的方法来学习一门新语言!

于 2008-09-18T12:54:38.753 回答
1

编写一个 Web 应用程序,可能使用Django -文档会教你很多好的 Python 风格。

使用一些流行的库,如PygmentsUniversal Feed Parser。这两种方法都提供了非常有用的功能,这些功能很难在一个有据可查的 API 中使用。

一般来说,我会远离那些没有很好记录的库——如果你没有任何 C经验。我还在学习 Python 时编写了 wxPython 代码,Python 是我的第一门语言,当时它只是 wxWidgets 的一个包装器。那段代码很容易成为我写过的最丑陋的代码。

我没有从 Dive Into Python 中得到太多,除了动态导入章节——其他地方并没有很好地记录。

于 2008-09-18T13:10:07.577 回答
1

人们倾向于说“最好的学习方式是通过实践”这样的话,但我一直发现,除非你专门学习一门语言来为某个项目做出贡献,否则很难真正找到要解决的小问题来保持自己去。

一个很好的解决方案是Project Euler,它列出了从简单到相当费脑筋的各种编程\数学挑战。例如,第一个挑战是:

如果我们列出所有小于 10 且是 3 或 5 的倍数的自然数,我们会得到 3、5、6 和 9。这些倍数之和是 23。

到了第 50 题,它已经变得更难了

一百万以下的哪个素数可以写成最连续素数之和

总共有 208 个,但我认为这里和那里都会添加一些新的。

虽然在开始 Project Euler 之前我已经相当了解 Python,但我发现我完全通过使用该语言学到了一些很酷的技巧。祝你好运!

于 2008-09-18T13:20:21.797 回答
1

在 Google 视频上搜索“Alex Martelli”、“Alex Martelli patterns”和“Thomas Wouters”。有很多关于高级 Python、Python 中的设计模式等的有趣演讲。

于 2008-10-08T01:31:46.893 回答