python学习计划(数据分析新手向)

前言

欢迎来到Python的世界!!

也许你已经听过许多的计算机编程语言,比如C/C++,比如经久不衰且流行的Java,比如适合写网页的JavaScript等等

你会很好奇,python和其他语言到底有什么不同,我们从开发效率来说,比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。

所以Python是一种非常高级的语言。

代码少,带来的是运行效率的低下,C程序运行1秒钟,Java程序可能需要2秒,而Python程序可能就需要10秒。

虽然我并不想介入语言之争,但是在github 2017的年度报告,Python超过了Java成为了第二名,这从侧面体现出Python的流行程度,连BAT、Google等等这些公司都在使用Python,所以不必担忧学习了Python之后未来用不上。

Python能干很多事情,日常任务,可以写网络游戏的后台,可以做网站,比如Youtube,就是使用Python写的

当然,也有Python不能做的事情,比如操作系统,这个只能用C语言写(接近底层且快),开发APP,只能用Swift/Objective-C(iphone)或者Java/Kotlin(Android),写游戏内核(比如PUBG的虚幻4引擎),最好使用C/C++

python极其简单,哪怕你没有学过任何编程语言,会使用电脑,你只要上过初中的数学课,并且认真听了,就能学会这门编程语言。

虽然这么说,但是在python的高级程序设计中,这些抽象的知识也是很难学的(比如元编程、鸭子类型、函数式编程)

最后,人生苦短,我用Python。

国外大佬的Python全指南(官方中文版)(甚至包括如何装Python)(requests库之父)Hitchhiker’s Guide to Python

一个基本的学习计划(面向数据类)

一个月基本要掌握的内容:

  • 输入输出函数(input)(print)

  • 数据类型和变量

  • 字符串操作和编码

  • if、for in 、while

  • python基础数据结构的基本使用(dict)(list)(tuple)

  • and or not 逻辑运算符的使用

  • 学会第三方库的导入

(基于快速上手的原则,我们暂时不学习面向对象编程,如果学有余力可以学习)

  • 接触并使用函数

  • 文件的IO读写

  • 数据结构的高级特性(切片)(拆包)(生成式)

  • 错误捕捉

  • ?????

大概的可能就这些,基本的学习教程可以自己看书或者看在线教程

我们可以练一些数学题来熟悉python,比如质数、水仙花数、公倍数之类的纯数学问题

然后我们的第一个方向就是爬虫,这个我们就不细讲,我们需要学会的几个库(其实只需要学会其中的几种功能):

  • lxml

  • BeautifulSoup

  • requests

  • json(标准库)

然后学一下HTML的基本知识,比如:

  • 元素
  • 属性
  • 段落

再了解一下HTTP的基本知识:

  • HTTP方法(get,post,put之类)
  • URL
  • cookie
  • HTTP报文头部

学习一下chrome的检查元素(chrome/Firefox/Safari),了解网站的构造和服务器与网站如何交互

对于动态加载的网站,我们了解一下AJAX、异步加载,然后我们可以直接抓取服务器APi传输的数据:

bilibili新番页面(因为有播放量等的缘故,所以需要随时更新而使用ajax)

基本自己手写爬虫就没有任何问题了,如果想提高效率可以学习多线程或者协程(较难),如果嫌还是太麻烦,可以学习爬虫框架,比如scrapy.

文章目录
  1. 1. 前言
  2. 2. 一个基本的学习计划(面向数据类)
|