我是一位很长时间的C ++ / Java开发人员试图进入Python并且正在寻找陈规定型的“Python for C ++ Developers”文章,但是他的空白。我已经看过C#,Java等的这些东西,它们对于快速掌握语言功能和值得注意的差异非常有用。有人有任何参考吗?
作为第二个红利问题,您建议将什么样的开源Python程序用于干净的设计,评论和使用该语言作为研究的参考点?
提前致谢。
答案 0 :(得分:26)
我从未真正理解“语言X为语言Y开发人员”的方法。当我开始学习语言X时,我想学习如何以语言X程序员的方式编程,而不是语言Y程序员的方式。我想学习我正在学习的语言所特有的特征,习语等。我希望能够利用使语言变得特殊的东西,并利用这些知识扩展我的思维方式和解决问题。我不认为我会从另一种语言背景下的教程中获得同样的见解。如果你可以学习你的第一语言而没有面向你已经知道的东西的教程,你应该能够以相同的方式学习第二语言(根据我的经验,你知道的语言越多,学习新语言就越容易)。
话虽如此,我建议The Python Tutorial作为一种优秀,快捷,简便的方式来开始使用Python和Dive Into Python作为更完整的介绍,也可免费提供here 。我也同意其他人所说的关于将标准库的代码看作是良好示例和设计实践的源代码,标准的python库非常简洁易读。
答案 1 :(得分:13)
Dive Into Python是一本面向有经验的程序员的Python书。
答案 2 :(得分:5)
Dive Into Python很棒,但不要忘记PJE的Python Is Not Java。
答案 3 :(得分:4)
通过阅读Python附带的标准库的来源,我学到了很多关于Python的知识。我似乎记得有一些“a-ha!”特别是在阅读urllib2.py
的时刻。
答案 4 :(得分:2)
Python与C ++有很大的不同,因此通常无法传输特定的知识。有几个language comparisons可用。您可以携带的是特定API的知识,例如POSIX或套接字API。
作为典型Python(GUI)应用程序的示例,请查看IDLE(Python附带)。
答案 5 :(得分:1)
C#和Java被认为是许多应用领域中C ++的更干净的替代品,因此通常会从一个“迁移”到另一个 - 这就是为什么有书可用。
Python和C ++是非常不同的野兽,虽然它们都被认为是通用编程语言,但它们的目标是编程频谱的不同端。
不要尝试在Python中编写C ++;事实上,在编写Python时尝试忘记C ++。 我发现学习常见的Python范例和技术并将它们应用于我的C ++程序要好得多,而不是相反。
答案 6 :(得分:1)
要学习这门语言,免费和在线python tutorial就是您学习语言并开始编写应用所需的全部内容。如果你想要一本书,我发现来自Apress的Beginning Python是一本很好的参考和教程。当然,学习语言的最佳方法是编写代码,因此我建议您查看Boost.Python。如果你有一个需要更灵活的C ++,Boost.Python可以为你提供一个学习Python并获得报酬的好借口。
答案 7 :(得分:0)
对于语言代码的最佳示例,语言的标准库通常是一个很好看的地方。尽管选择了最近的一篇文章 - 旧的部分可能是为旧版本编写的,有时也是在库变得足够大以保证大标准之前编写的 - 比如PHP和Erlang的库,它们内部不一致。
对于Python来说,Python 3000正在大量清理库,因此可能是优秀Python代码的重要来源(尽管它是为未来的Python版本编写的)。