学习 Python 编程的 19 个资源

编译:wzhvictor,英文:codecondo

segmentfault.com/a/1190000004187319

用Python编写代码一点都不难,事实上它一直被赞誉为最容易学的编程语言。如果你准备学习web开发, Python是一个不错的开始,甚至想做游戏的话,用Python来开发游戏的资源也有很多。这是快速学习这门语言的途径之一。

许多程序员都把Python作为编程之旅的开始,然后是像PHP和Ruby这样的语言。它也是2014年最热门的web开发语言之一,并极力推荐学习。但是,Python应该怎么学呢?应该从哪里开始?

我来为你解决这个问题,因为我自己学习编程和开始做开发的时候也依靠了很多这里的资源。当然这仅仅是一个友好的建议,最好的方法还是通过实践去学习,这里推荐的一些书和资源只是为了指引你走往正确的方向。

刚开始学习的时候可能会特别令人沮丧,一旦你学完了基础,之后的东西对你来说就很自然了,你都不需要思考就知道要怎么做。

Python for Beginners

如果你的Python开发之旅有一段时间了,这门课程可能是一个很好的开始。Python for Beginners课程是由Alex Bowers讲授的最全面的Python课程之一,这套网络教程非常容易学习。是的,它需要付一定的费用,但你是想单独学习,还是和其他30000名学生一起学?

报名本课程的好处是你将被授权访问一个只有付费会员的论坛, Alex老师自己就驻扎在那,并且很乐意尽可能地帮你解决Python的问题。我的意思是,在这个清单里任何的资源都是值得的,因为你投入了一些成本额外收获了与人沟通的感觉会超越一切。

你可以使用优惠码:CODECONDO——它会给你一个固定的75%的折扣,但激活只能在2014年9月3日之前——所以要快点,您可以随时购买的这个课程然后用于以后的学习,不要把钱浪费在这笔交易上!

译者注:翻译时距这篇原文的发布快两年了,所以想购买这套课程的朋友还得是原价——$99

Learn Python The Hard Way (笨办法学Python)

这本书绝对是学习Python最简单的方法。你会被如此简单的基础学习感到震惊,真实地感受到自己的学习历程,一步一步地获取新的知识。我也感到它非常鼓励学习者去尝试并创造出自己的程序。

代码可能会很少,但是它们肯定会有助于你更好的理解语言本身和语法。Python非常的流行,所以当你遇到了问题时,在类似Stack Exchange这样的网站里有可能会找到答案,遇到问题需要解决的话尽管地Google吧。

你会学到如何去:

  • 在全平台上安装Python环境

  • 写Python程序

  • 理解Python语法和文档

  • 像程序员一样思考

  • 还有更多的东西

本书的HTML在线版本是完全免费的,大部分人使用的都是在线版。我希望你购买完整的书或者给予一些捐赠,毕竟作者花了很大的力气来完成它。如果你感觉视频更容易学习的话,它的高级版里就包含了视频。

The Python Challenge

如果你的编程生涯中从没做过这样的挑战,这可能会有点难度。但是配和上面介绍的那本书的话也不是很难,你应该尝试一下。它有33个关卡(谜题),你可以用Python编程技巧解决。

几百万的人都在试着解决这个,即使你不能完成所有的关卡,你也会将学到很多新的东西,尤其是批判性思维和发散思维。你的大脑会过热,但这是在编程!

Learn Python Programming @ Codecademy

你可能看到许多“大牛”程序员骂这个网站,但那并不重要。我们想要做的是看看或者测试一门编程语言的基本语法是怎么执行的,以及调用函数时做了些什么,除了简单地输出‘Hello World!’。

在这个Codecademy的课程中你将会学到如何使用文件和循环,什么是函数以及他们能用来做什么。这些都是非常基础的,但是对初学者来说都是很好的东西。当需要帮助时有一个用来交流的论坛,但所有的东西都应该在你理解的范围之内。

你不需要安装任何工具,如果你想在你自己的电脑上重写一遍代码以便更好地理解它,你可能唯一需要的就是一个Notepad++编辑器。我就是这样做的,并且我向所有想学习编程的人都推荐Codecademy,不管是Python还是其他的语言。

Intro to Computer Science @ Udacity

Udacity提供了一个很棒的免费课程,引你进入Python编程和学习关于搜索引擎的许多东西,以及如何编写你自己的小型网络爬虫。它的确是一个值得参与的课程,并且还提供了额外的指导和社区支持。

你可以报名成为付费学生得到导师的指导,并且可以在课程结束得到一个证书,或者你可以自己使用免费的课件学习,遗憾的是付费课堂的容量有限,所以你申请后需要加入名单等待。

它总共有11个课程,每一个都有讲解非常深入的文档。去它的官方主页查看更多的信息或者你想问的问题的答案。

Google’s Python Class

Google它本身就被一大堆Python代码驱动着,只有他们提供社区支持并且愿意帮助其他人学习这门语言才更有意义。这是我曾经最喜欢看的指南和课程之一。它真的很详细,而且视频适合初学者,观看起来也很有趣。

去看几分钟它的第一堂课,看看你是否喜欢那个老师,然后决定是否开始学习Python!官方主页有这些练习题和例题的所有链接。

A Byte of Python

非常像LPTHW(笨办法学Python),但是在如何制定完整的学习计划并实施,以及如何迈出第一步上提供了更深层次的引导,而不会让你丧失自信心。对于那些想学Python的人来说它被认为是最好的初学者教程之一,当然你要先看看前几章,是否喜欢它的写作风格。

Think Python

Think Python是一个面向Python初学者的手册。它从编程的基本概念教起,非常详细地定义了所有第一次会遇到的术语,并且很有逻辑地展现新的概念。像递归和面向对象这样大一点的知识板块被分成了一系列更小的步骤,穿插于课程几个章节。

在这个链接里你会发现有大量的示例代码。它是最为专业的书之一,它有一个很严肃的原则: “像计算机科学家一样思考”。它需要将近40美元才能买到,但是你可以下载免费的PDF和HTML版本。如果从头开始学Python的话,肯定会从它上面得到好处。

Python at Learnstreet

你可能会想有个网站提供如何在他们页面上添加HTML代码的课程,哈哈。严肃一点地说,Learnstreet提供了很棒的Python交互式学习教程,就像这篇文章所说的所有东西一样,它对初学者非常友好。如果你遇到了问题,最好用Google去搜索。

我最喜欢Learnstreet的一点是每个练习后面都有许多提示和解释,显示在你编写代码的同一个界面里。

The New Boston

如果你更喜欢使用视频学习,我不确定是否还有比The New Boston的Python系列视频教程更全面的了,许多其他的编程语言也可以在他们的YouTube频道里找到。

它唯一的缺点就是没有可以阅读或者下载的资料,你只能看视频。我是那种不能忍受一直盯着视频看的程序员,这可能与我选择Google的Python课程有关,但它们实在太有趣了。

Python @ Coursera

这个课程是为从来没接触过编程的人准备的。你只需要小学的数学水平就可以了:懂简单的数学方程和算术优先级,以及像f(x) = x + 5这样的函数。

它在十周内应该可以学完,每周大概花10小时来完成课后作业。如果你有时间来做这个,并且不会感到很累,我推荐你注册并完成这个课程,它会巩固你的知识,并可以结合上面介绍的任何一个资源来更好地理解 Python。

Pythonspot

Pythonspot是一个综合教程,划分了很多不同类别的知识板块,首先你将拥有初学者资源来帮你开始Python的学习,然后你继续保持前进你能学到更多关于使用Python开发web,创建图形界面,开发游戏的内容,到那时你可以准备学习一些更高级的板块,像网络等等。这些都在一个地方,非常容易使用。

Python Practice Book

从根本上说,这是Anand Chitipothu在他讲授Python课程时使用的资源,但即便你不与Anand本人一起学习,你仍然可以利用这个资源来获取Python在不同角度的见解,以及看到不同开发者的观点。

Python Tutor

我认为这是新手程序员近期能够上手的最好的项目之一,Python Tutor都是在教你当执行你写的代码时到底发生了些什么。清楚地了解到如何写一段程序,能够理解后台程序的每个命令都是截然不同的。你可以使用自己写的代码,也可以使用平台提供的代码。

Real Python

虽然这是一个收费的资源,但最新的评论看起来还是相当不错的,所以不管怎样我决定加上这一条。在Real Python需要花费60美元来开始你的学习,将会有超过1300页的内容和10个多小时的视频供你访问,还包括以后可以免费更新。你能得到来自Real Python团队的导师的帮助,不过这需要额外的费用。以及博客里有适量与代码相关的教程能够给你帮助。

Full Stack Python

你能比较熟练地使用Python了,但是你不知道接下来该走什么样的方向?这个网络课程就是为你解决这个问题的,通过给你一个真正的项目去做,帮助你理解怎样用你学到的Python知识建立一个web应用程序和网站。学会怎样积累一些真正的知识。

Invent with Python

教你怎样使用Python创造一款你自己的电脑游戏。每章为你提供了一个新游戏完整的源代码,通过这些例子教你编程的概念。它在网站上可以免费阅读,或者在亚马逊购买。

PythonLearn

你是一个对信息学感兴趣的家伙吗?整个网站的资源都围绕着确切的话题,所以如果你感兴趣的话,去看看可能会是一件好事。

Dive Into Python3

迟早有一天,大多数的东西都会使用Python3来构建,尽管Python2仍然非常稳定并被大量使用,但Python3在过去的两年里确实发展的非常完整了。这本在线书籍所有的内容都在帮助你理解Python3是什么,以及如何最好地掌握它。

在哪学习Python?

事实证明我自己尝试了这里大部分的课程,我其实希望有更多的资源和链接加入到这个列表里来,但我们只是看一下主要的,还有这么多的新知识是你需要学习的。你有什么编程经验?你想用你新学到的技能做些什么?我认为任何想建立专业知识体系的人首先应该明确自己想做什么,然后研究一个项目直到做完。这样做的好处是你会学到具体的东西,以后开发一个类似的项目会更容易。

互动平台是挺酷的,但它们还不能完全取代专业人士提供的书籍或课程。我衷心祝愿你学习Python能够顺利,并且如果你有任何想问的问题的话,请在评论里提出。

学习 Python 编程的 19 个资源 (转)的更多相关文章

  1. 学习Python编程的11个资源

    用 Python 写代码并不难,事实上,它一直以来都是被声称为最容易学习的编程语言.如果你正打算学习 web 开发,Python 是一个不错的选择,甚至你想学游戏开发也可 以从 Python 开始,因 ...

  2. Linux运维人员如何学习python编程

    Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...

  3. 学习Python编程的11个精品资源

    本文由 伯乐在线 - atupal 翻译自 Alex Ivanovs.欢迎加入技术翻译小组.转载请参见文章末尾处的要求. 用 Python 写代码并不难,事实上,它一直以来都是被声称为最容易学习的编程 ...

  4. 学习Python编程的最好的几本书

    读书是汲取某个特定学科的知识以及更深入的理解该学科的最好的方式.在这个科技世界,通晓计算机系统各个不同的技术领域是至关重要的.其中最重要的内容之一便是计算机程序语言.现今,计算机中存在许多不同类型的程 ...

  5. 学习Python编程技术的流程与步骤,自学与参加培训学习都适用

     一.清楚学习目标 无论是学习什么知识,都要有一个对学习目标的清楚认识.只有这样才能朝着目标持续前进,少走弯路,从学习中得到不断的提升,享受python学习计划的过程. 虽然目前的编程语言有很多,但是 ...

  6. 刚转行1年测试新手:学习Python编程经验实战分享

    一.开头说两句 作为一名零基础转行刚一年的测试新手来说,深知自己在技术经验方面落后太多,难免会有急于求成的心态,这也就导致自己在学习新知识时似懂非懂,刚开始学完那会还胸有成竹,一段时间之后却又忘的一干 ...

  7. 【转】学习Python的19个资源

    原文链接:[译]学习Python编程的19个资源 用Python编写代码一点都不难,事实上它一直被赞誉为最容易学的编程语言.如果你准备学习web开发, Python是一个不错的开始,甚至想做游戏的话, ...

  8. Python学习周期 学习Python要多久?

    学习python编程需要多长时间?首先我们需要明确一点,在互联网技术领域,技术始终在不断的迭代升级,只要进入IT行业就要时刻保持学习的状态,才能不被技术进步的车轮碾压.我们目前讨论的python学习周 ...

  9. Python编程核心之makeTextFile.py和readTextFile.py

    引言: 最近大半年都在学习python编程,在双十一的时候购买了<Python编程核心>,看到makeTextFile.py和readTextFile.py两个例子有点错误,所以在这里给修 ...

随机推荐

  1. C# 文件下载四方法

    using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Secu ...

  2. 再谈Weiphp公众平台开发——1、成语接龙插件

    易错点,注意插件的命名 1.创建插件.在weiphp管理后台创建成语接龙插件,勾选安装后立即启用,不需要配置项和管理列表.点“确定”完成插件的创建. 2.安装插件. 3.检测插件是否成功安装.返回到w ...

  3. 【js与jquery】电子邮箱、手机号、邮政编码的正则验证

    //验证邮政编码 $("#postcode").blur(function(){ //获取邮政编码 var postcode=$("#postcode").va ...

  4. Linux 内核进程管理之进程ID 。图解

    http://www.cnblogs.com/hazir/tag/kernel/ Linux 内核进程管理之进程ID   Linux 内核使用 task_struct 数据结构来关联所有与进程有关的数 ...

  5. iOS app提交审核 11.13条款问题

    今年开年到现在.提交app应用一直招拒,这个问题我想不明白,感觉就是一个坑.所以贴出来给大家看看. 发件人 Apple11.13 - Apps that link to external mechan ...

  6. cf B. The Fibonacci Segment

    http://codeforces.com/contest/365/problem/B #include <cstdio> #include <cstring> #includ ...

  7. Vulkan Tutorial 21 Staging buffer

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 Introduction 顶点缓冲区现在已经可以正常工作,但相比于显卡内部读取数据, ...

  8. selenium-确认进入了预期页面

    selenium确认进入了预期页面 在自动化操作中,浏览器每次进入一个新的需要,都需要确认该页面是否打开或打开的页面是否是预期的页面 需要进行确认页面后方可进行下一步操作 确认页面有很多中方法,像每个 ...

  9. 2017/05/16 java 基础 随笔

    1,成员变量和局部变量的区别 1)在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存) 2)初始化值不同 成员变量:有默认初始 ...

  10. jsp 页面间传递参数

    JSP页面间传递参数是经常需要使用到的功能,有时还需要多个JSP页面间传递参数.下面介绍一下实现的方法. (1)直接在URL请求后添加 如:< a href="thexuan.jsp? ...