小白如何入门Python? 制作一个网站为例

首先最重要的问题是为什么要学习python?这个问题这个将指导你如何学习Python和学习的方式。

以你最终想制作一个网站为例。从一个通用的学习资源列表开始不仅会消磨你的激情,而且你获得的知识很难应用,我曾经尝试过不通过上下文和具体应用来学习编程,但是我几乎没有获得任何有用的技能。

当我3年前学习python时,我想创建一个网站。这对于任何一个学习Pyhon人来说,不足为奇。

1、找到是什么激励你

找到并保持你的动机是关键-我高中睡了很多个的程序设计课,因为它只让我们记住了一堆语法。另一方面,当我需要学习python来制作一个自动作文评分算法时,我连续熬夜几个晚上来学习和迭代。

学习中很少涉及动机--你通常只是跟随别人给的教程去尝试做一些东西。但是,python的伟大之处在于,你几乎可以开发所有的东西,从移动应用程序到游戏到高级机器学习算法。无论你是否感兴趣,你都可以在python中构建它,并且可能获得了一个很好的入门教程。

选择一个或两个你感兴趣的东西,并坚持下去-你会在这个领域开发很多项目。

以下是一些示例区域,但可以随意添加:

  • 网站
  • 游戏
  • 数据科学/机器学习

2、了解一些基本的python语法

除非你知道基本的语法,否则很难实现任何东西。即便如此,也不要花太长时间在上面。你的目标是开展你感兴趣的项目,学习基本的语法就足够了

作为参考,我花了不到一周的时间在codecademy上,学习了大概30%的语法。这足以可以开始一个项目了

一些可以帮助你的资源:

Codecademy --很适合学习基本语法

Learn python the hard way--一本教了很多python概念的书。

Dataquest.io--这是我学习Python的第一个网站。它的重点是教你在数据科学中使用python,但它可以教会你所有的基本语法。

Python教程--主要python站点上的教程。

我再次强调,前期不要花太多时间在基本语法上。你越快开展项目工作,你将学的越快。当你遇到问题卡住的时候,你还是可以回去看看语法的。

3、进行结构化项目

除非你真正的把你学到的东西应用在实际项目上,否则你学到的知识将会慢慢流失。项目是一个很好的学习方式,因为他可以促进你的能力,让你知道如何应用你所学到的技能,并且可以让你在找下一份工作时有东西可以拿出来展示。

当你开始工作时,更多带有指导的结构化项目对你帮助很大。这里有几个想法:

游戏

Pygame tutorials--pygame(用于制作游戏的python库)有一个很好的教程列表

Making games with pygame--这本书看起来像是通过制作游戏这样一个很好的方法来学习python

网站

Flask tutorial--官方flask教程(简单的python web框架)。

Bottle tutorial--Bottle教程(更简单的python web框架)。

How To Tango With Django 1.7--个django的指南(有些复杂的python web框架)

数据科学

Dataquest.io --以交互方式教你Python和数据科学。你可以分析一系列从CIA文件到NBA球员的有趣的统计数据数据集。

Scikit-learn 文档--Scikit-learn有一些很好的文档和教程(python的主要机器学习库)。

Python数据分析--由python数据分析库(pandas)主要作者编写,对使用python分析数据有一个很好的介绍。

4、自己开展项目

一旦你以指导的方式学习了这些概念,那么现在是自己开展一些项目的时候了。你仍然需要查阅参考资料并查找概念,但是你将根据项目的需求来应用你所学到的知识,而不是相反。

找一起工作的其他人一起开展项目,那样可以帮助你学习并帮助你保持积极性。

我的一些建议:

  • 扩展你之前工作的项目,并添加更多功能
  • 去你所在地区的python聚会,找到正在开展有趣项目的人。
  • 查找开源包并做出贡献。
  • 看看是否有任何本地非营利组织正在寻找志愿者开发者
  • 查找其他人已经完成的项目,看看你是否可以扩展或改写它。

我的第一个项目是将我的自动文本评分算法从R改写成python。它最终看起来没有很漂亮,但它事我在学习Python旅程上的开始。

其实关键是选择一些东西来做。如果你只想做出一个完美无瑕疵的项目,那么你有可能永远都不会做出一个项目。

5、勇于挑战更困难的项目

不断增加你项目的难度和范围。如果你对你正在开发的东西感到很轻松,那就意味着现在是尝试更加困难的东西的时候了。

以下是当时的一些想法:

  • 尝试教一个新手如何做你当前的项目。
  • 尝试加载测试你的网站-比如你可以扩大它的规模吗?
  • 你可以让你的程序运行得更快吗?

6、结语

不管怎么说,python一直在不断演变进化。可能只有少数人可以断言完全理解它。

你需要不断地学习和研究项目。如果你这样做了,当你回头看看自己6个月前写的代码,你会觉得这代码是有多么糟糕。如果你到达这一层次了,那恭喜你,说明你上道了。

Python是一种非常有趣且值得学习的语言,我认为只要找到正确的动机,知道你为什么学习Python,你用它来做什么,渐渐的你就可以精通它。

您可能感兴趣的文章:

  • python入门前的第一课 python怎样入门
  • Python入门之后再看点什么好?
  • python入门教程 python入门神图一张
  • Python入门教程 超详细1小时学会Python
  • Python中的Numpy入门教程
  • 一篇不错的Python入门教程
  • Python入门篇之函数
  • Python入门
  • Python类的基础入门知识
  • Python3 入门教程 简单但比较不错
(0)

相关推荐

  • Python入门之后再看点什么好?

    不止一次在微信.知乎有读者朋友跑过来问:看完了基础书,甚至看两遍了,但自己写的时候还是没思路,我该怎么办? 编程在我看来就是一门手艺活,绝不是简单通过看书就能学会的,跟学游泳.学车.学钢琴一个道理,没别的,掌握了最基本的理论之后就是干,只有通过大量的练习.实战才能掌握编程这门技能,之后再回过来头来继续深入理论 这个问题在知识星球也同样被问,于是在那里我们设了每日一题的专题,每周会出三道题给大家,做完之后要求提交到 GitHub,我会统一对代码进行 review.这些题一般都是出自于一些真实应用场

  • Python类的基础入门知识

    复制代码 代码如下: class Account(object): "一个简单的类" account_type="Basic" def __init__(self,name,balance): "初始化一个新的Account实例" self.name=name self.balance=balance def deposit(self,amt): "存款" self.balance=self.balance+amt def w

  • Python入门篇之函数

    Pythond 的函数是由一个新的语句编写,即def,def是可执行的语句--函数并不存在,直到Python运行了def后才存在. 函数是通过赋值传递的,参数通过赋值传递给函数 def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: 复制代码 代码如下: def function_name(arg1,arg2[,...]):     statement [return value] 返回值不是必须的,如果没有return语句,则Python默认返回值None. 函数名的命

  • python入门教程 python入门神图一张

    初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程.那么本教程将花费十分钟的时间带你走入Python的大门.本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些基本概念.很显然,如果你希望真正学好一门语言,你还是需要亲自动手实践的.在此,我会假定你已经有了一定的编程基础,因此我会跳过大部分非Python语言的相关内容.本文将高亮显示重要的关键字,以便你可以很容易看到它们.另外需要注意的是,由于本教程篇幅有限,有很多内容我会

  • Python中的Numpy入门教程

    1.Numpy是什么 很简单,Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy.matplotlib一起使用.其实,list已经提供了类似于矩阵的表示形式,不过numpy为我们提供了更多的函数.如果接触过matlab.scilab,那么numpy很好入手. 在以下的代码示例中,总是先导入了numpy: 复制代码 代码如下: >>> import numpy as np>>> print np.version.version1.6.2

  • Python入门教程 超详细1小时学会Python

    为什么使用Python    假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. 思路:用shell编程.(Linux通常是bash而Windows是批处理脚本).例如,在Windows上用ping ip 的命令依次测试各个机器并得到控制台输出.由于ping通的时候控制台文本通常是"Reply from ... " 而不通的时候文本是"time out ... " ,所以,在结果中进行

  • python入门前的第一课 python怎样入门

    人工智能时代的到来,很多文章说这么一句:"不会python,就不要说自己是程序员",这说的有点夸张了,但确实觉得目前python这个语言值得学习,而且会python是高薪程序员的必备技能. 很多初学Python的同学都面临着很多的疑问,Python学习步骤应该如何安排?多长时间可以达到精通呢? Python学习步骤应该怎样安排: 首先,学习Python编程技术,自学或者参加培训学习都适用,每个人都有自己的学习方式和方法. 一.明确自己的学习目标 不管我们学习什么样的知识,都要对自己的学

  • Python3 入门教程 简单但比较不错

    本文适合有Java编程经验的程序员快速熟悉Python 本文程序在windows xp+python3.1a1 测试通过. 本文提到的idle指python shell,即安装python后你在菜单看到的IDLE(python gui) 在idle里ctrl+n可以打开一个新窗口,输入源码后ctrl+s可以保存,f5运行程序. 凡打开新窗口即指ctrl+n的操作. 1 你好 复制代码 代码如下: #打开新窗口,输入: #! /usr/bin/python # -*- coding: utf8 -

  • 一篇不错的Python入门教程

    原文 http://www.hetland.org/python/instant-hacking.php Instant Hacking[译文] 译者: 肯定来过 这是一篇简短的关于python程序设计语言的入门教程,原文在这里,翻着词典翻译了来! 这是一份对编程艺术的简短介绍,其中的例子是用python写成的.(如果你已经知道了该如何编程,但是想简单了解一下python,你可以查阅我的另一篇文章Instant Python.)这篇文章已经被翻译为意大利.波兰.日本.塞尔维亚以及巴西葡萄亚语等许

  • Python入门第1/10页

    第一章 介绍 脚本语言是类似DOS批处理.UNIX shell程序的语言.脚本语言不需要每次编译再执行,并且在执行中可以很容易地访问正在运行的程序,甚至可以动态地修改正在运行的程序,适用于快速地开发以及完成一些简单的任务.在使用脚本语言时常常需要增的新的功能,但有时因为脚本语言本来就已经很慢.很大.很复杂了而不能实现:或者,所需的功能涉及只能用C语言提供的系统调用或其他函数--通常所要解决的问题没有重要到必须用C语言重写的程度:或者,解决问题需要诸如可变长度字符串等数据类型(如文件名的有序列表)

随机推荐