看到Python当下这么火,想自学然而却一直没能动手,想去报个靠谱的培训班,又担心学习成本太高,心里百万个不愿意,身体却很诚实地打着退堂鼓。

可以很负责的说,Python 是一门相对友好的编程语言,为什么说友好?因为如果你想要完全掌握它,其实用点心还是很容易就能学会的。

Python 的设计哲学之一就是简单易学,为什么这么说呢?

首先,python语法简洁明了:相对 Ruby 和 Perl,它的语法特性大多数都很简单;

然后就是,切入点很多:Python 可以能做很多事情,比如科学计算、数据分析、爬虫、Web 网站和命令行实用工具等等等,总能找到一个你要去学习python的理由。

那么想学好python该从何学起?

起步阶段--掌握基础理论知识

包括python的编程语言的语法、算法和数据结构、编程范式等,例如:变量和类型、循环语句、分支、函数、类。这看上去是掌握了一种语法,事实上是建立一种思维。此话怎讲呢?就是让一个 有Java 编程基础的人去学习 Python,他可以很快的将 Java 中的学到的面向对象的知识 map 到 Python 中来,从而快速掌握 Python 中面向对象的特性。

如果说你之前从未接触过编程语言,那么建议去买一本可靠的语法书。虽然你可能会觉得这非常枯燥乏味,但对于建立编程思维是必不可少的一步。

下面列出了一些适合初学者入门的教学材料:

(1)「笨方法学 Python」

讲解的是python语言,还附带大量可实践的例子,非常适合快速起步。

(2)「The Hitchhiker’s Guide to Python!」:The Hitchhiker’s Guide to Python!

这本书着重于 Python 的最佳实践,不管你是 Python 专家还是新手,都能获得极大的帮助。

(3)「Python 官方文档」:Our Documentation

实践中大部分问题,都可以在官方文档中找到答案。

(4)辅助工具:Python Tutor

一个 Python 对象可视化的项目,用图形辅助你理解 Python 中的各种概念。

第二 发展阶段

当你了解了基础知识,必定会想要试试,去验证这些基础知识是否真的有用或者说是看看自己到底掌握了多少。

是的,想要让 Python 发挥出它的价值,当然不能停留在语法层面。

对于科学计算和数据分析、爬虫、Web 网站、游戏、命令行实用工具等,这些是怎么运用python去实现的,这是你要学习的。

说起来,python的发展近年来得到了质的飞跃,下图是在网上查阅的全球去年编程语言的排名数据分析图,

可以看到,python已经超越C#语言升至第四名了。

python现状

拿爬虫举例,如果你对计算机网络,HTTP协议,HTML,文本编码,JSON一无所知,你能做好这部分的工作么?这样子一分析,是不是觉得python变得好复杂?

所以这个时候,就需要接触大量类库,阅读大量相关书籍。

书籍方面:

这里列出一些比较有一些帮助的书籍

「集体智慧编程」:集体智慧编程

「数学之美」:数学之美

「统计学习方法」:统计学习方法

「Pattern Recognition And Machine Learning」:Pattern Recognition And Machine Learning

「数据科学实战」:数据科学实战

「数据检索导论」:信息检索导论

爬虫:

「HTTP 权威指南」:HTTP权威指南

Web 网站:

「HTML & CSS 设计与构建网站」:HTML & CSS设计与构建网站

你会发现所提到的大部分书籍,并不是讲 Python 的书,而更多的是专业知识。

深入阶段

这个阶段的你,对 Python 几乎了如指掌,那么你一定知道 Python 是用 C 语言实现的。

可是 Python 对象的“动态特征”是怎么用相对底层,连自动内存管理都没有的C语言实现的呢?这时候就不能停留在表面了,勇敢的拆开 Python 的黑盒子,深入到语言的内部,去看它的历史,读它的源码,才能真正理解它的设计思路。

如何系统自学python_如何系统的自学Python?自学python入门必看相关推荐

  1. 想自学软件测试?这本《软件测试》,入门必看

    软件测试的经典书籍,这本书可以作为软件测试行业的入门科普书籍,内容通俗易懂. 介绍 本书涵盖了软件测试的方方面面:软件测试如何适应软件开发过程,基本的和高级的软件测试技术,在常见的测试任务中运用测试技 ...

  2. 95后数据科学家教你从零自学机器学习,这有3本入门必看书籍

    晓查 发自 凹非寺  量子位 编译 | 公众号 QbitAI 厌倦了现在的工作,想转行做数据科学,但是却没有计算机专业的相关学历,应该怎样才能入门? 这类的教程已经有很多.最近一位22岁的数据科学家D ...

  3. W7级别的服务器系统,秘籍!从Win7旗舰版菜鸟升级到高手必看

    Win7旗舰版用户会面临一个困惑,新的操作系统有些功能不是很明白,操作起来会觉得很迷糊.这时候就需要有个叫入门教程的东西来帮助你快速从Win7旗舰版菜鸟升级到高手,如果翻一本又厚又繁琐的教程书看上半天 ...

  4. 零基础如何系统学习Python?Python入门必看

    零基础如何系统学习python,绝大多数零基础转行者学习编程的目的就是想找一份高薪有发展前景的工作,哪个编程语言就业前景好越值得学习.零基础的同学学Python是一个不错的选择. 零基础学习pytho ...

  5. 国产版Jetson Nano学习篇2—详细讲解Jetson Nano的开发环境配置和其 Ubuntu 18.04系统的操作,入门必看

    目录 前言 1.开发环境配置 1.1联网 1.2系统汉化和安装中文输入法 1.2.1系统汉化(按需求选择) 1.2.2安装中文输入法 1.3更换关屏设置 1.4更新源和部分软件(仅供参考) 2.Pyt ...

  6. 51自学网python爬虫_小白必看的Python爬虫流程

    定义: 网络爬虫(Web Spider),又被称为网页蜘蛛,是一种按照一定的规则,自动地抓取网站信息的程序或者脚本. 简介: 网络蜘蛛是一个很形象的名字.如果把互联网比喻成一个蜘蛛网,那么Spider ...

  7. 怎么安装python_零基础入门必看篇:浅析python,PyCharm,Anaconda三者之间关系

    今天为大家带来的内容是:零基础入门必看篇:浅析python ,PyCharm,Anaconda三者之间关系 众所周知,Python是一种跨平台的计算机程序设计语言,简单来说,python就是类似于C, ...

  8. 如何系统的自学python-如何系统的学习python?

    你好同学,我是IT培训从业者,也是一名Python的讲师. 在这里我们建议大家用知识投资的<道.法.器.术.势>五个工具来完美的执行和落地自学Python,好了,废话不多说,我们来开始: ...

  9. 如何系统的自学python-怎样才能彻底系统的自学python?!白Python菜鸟教程

    零基础学Python应该学习哪些入门知识 黑马python3的视频教程可以先看看简单易学 从哪里下载Python学习路线及全套视频教程? 淘宝这搜一大学习教程你可以看菜鸟教程,最基础分,然后这分学习完 ...

最新文章

  1. 搭建Web服务器之Step1:VMWare+CentOS6.3
  2. 设计模式:享元(FlyWeight)模式
  3. 软链接和硬链接的解读
  4. BUUCTF(pwn)jarvisoj_fm --格式化字符串漏洞
  5. 牛客网数组排序NC140
  6. JVM内存管理概述与android内存泄露分析
  7. SharedPreferences基础
  8. python中的一个现象,db.commit和db.commit()
  9. 微信小程序API之getLocal
  10. Vue-自定义表单验证
  11. 阿里巴巴sign参数解密
  12. java基于springboot+vue校园电动自行车管理系统
  13. IDEA SVN拉下来的项目import project 没反应 解决方案
  14. EndNote设置自动导入文献
  15. 博文翻译:Tackling the Cold Start Problem in Recommender Systems
  16. 信道检测手机软件 ios_3.2、《无线通信基础》--点对点通信:检测、分集与信道的不确定性--时间分集...
  17. zigbee以太网网关方案
  18. 2. Bean Validation声明式校验方法的参数、返回值
  19. 画出android音乐播放器的类图,基于Qt图形框架音乐播放器的设计与实现
  20. 中国软件与IT外包产业以印度为镜

热门文章

  1. vim中p的粘贴位置
  2. Mysql中的 not null
  3. NeurIPS 2020 | 数据类别不平衡/长尾分布?不妨利用半监督或自监督学习
  4. Java贪吃蛇应用的设计与实现
  5. 程序员如何自我介绍,才能增加面试通过率?
  6. 经济学人翻译练习4.16期刊——美国国税局
  7. python拆分列表_Python-基于列表拆分PDF
  8. 北京大兴希尔顿酒店开业助力机场配套
  9. Python学习:Windows路径中的转义字符 \ 问题解决办法
  10. mysql查看事件任务内容_Mysql 中的事件//定时任务