我是如何零基础自学Python的?「文末赠书」

640?wx_fmt=jpeg

    这几年Python越来越火,对于大部分来说刚开始学Python时,面对网上各种各样的学习资料却不知道从何学起。其实Python是一个对初学者相对而言比较友好的编程语言,语法也比较简洁。下面我整理了一下自己在学习Pyhon过程中的一些重要知识点,希望可以帮到正在学习或者准备学习的同学!

1、初级阶段

    你可能从哪里了解到Python的历史、优缺点以及它的应用领域或者说就业环境,或者说出于个人爱好,下定决心去学习Python。

    开始你之前,首先你需要有一个能运行Python代码的环境,无论Windows、Mac、Linux系统都可以从官网上下载到相应的安装包。配置好环境之后,还需要一个包管理工具,即pip。它提供对Python包的查找、下载、安装、卸载等功能。如果后期你的项目比较多,每个项目之间用到的包的版本可能不一样,为了防止互相影响。可以选择去安装virtualenv。它可以用来创建Python的虚拟环境库,是独立于真实环境存在的。可以创建多个虚拟环境。每一个虚拟环境可以当做是一个纯净版的开发环境。其次就是选一个适合自己的IDE,比如:PyCharm、Eclipse、VSCODE、Atom、Sublime、Emacs等等。这里推荐PyCharm,个人感觉唯一缺点就是比较重,其他功能都是非常不错的。

    一门语言的学习都是从最基础的开始,而一切的发展都是要有一个夯实的基础。乔丹曾说过:“基本功是我立足NBA的根本,我取得的任何成绩都可以归功为我所练就的基本功。


1、基础篇

变量和类型 
  • 变量的命名
  • 变量的使用
  • 类型的查询
  • 类型转换

数字和字符串以及常用的数据结构
  • 整数

  • 浮点数

  • 复数

  • 字符串

  • 字符串的操作

  • 字符编码

  • 列表的使用:列表的定义、元素的增删改查、切片、遍历、下标越界

  • 元组的使用:元组的定义、元组与列表的转换、元组的特征等

  • 集合的使用:集合的定义、与列表的区别。常用操作:交集、并集、差集等

  • 字典的使用:字典的定义、字典的增删改查、删除key、遍历

运算符 
  • 算数运算符 :+ 、- 、* 、 /、 %、 **、 //

  • 比较运算符 :== 、!= 、<>、> 、< 、>= 、 <= 

  • 赋值运算符 :  =、 += 、-= 、*=、 /= 、%=、**=、 //=

  • 逻辑运算符 :  and、not 、or

  • 位运算 : & 、| 、 ^、 ~ 、<< 、 >> 

  • 成员运算符:in、not in

  • 身份运算符:is、 is not

  • 运算符优先级

分支结构
  • 代码之间的缩进
  • if-else
  • if-elif-else
  • 嵌套if(else、elif)

 循环结构
  • for循环

  • while循环

  • continu关键字

  • break关键字

  • return关键字

函数与模块的使用
  • 函数的作用

  • def语句

  • 函数中的列表

  • 魔法参数

  • 函数的调用

  • 函数的返回值(无返回值、多个返回值、单个返回值)

  • import,from ... import .. , from import ..as 

面向对象

  • 理解面向对象

  • 面向对象的搜歌特征:抽象、封装、继承、多态

  • 什么是类

  • 类的创建、初始化、实例化

  • 属性访问

  • 类的继承

  • 调用父类的方法

  • 内置类属性

文件的操作

  • open() 函数

  • 读文件的方法:read()、readline()、readlines()

  • 文件的路径

  • 写文件:覆盖、追加

  • 异常处理(try..except..finally) :FileNotFoundException...

  • with..open

  • 存储&读取JSON格式数据:json.dump()和json.load()

  • 数据持久化:操作csv、excel


进程与线程

  • 进程:multiprocessing模块、进程池、进程间的通信

  • 线程:thread模块、threading模块、Lock类、Condition类、Thread类、线程池

  • 线程和进程的关系以及区别

  • 并行和并发

  • 同步和异步

  • 创建多线程

其他补充

  • 熟悉常用的模块,如re、os、sys、datetime、time、math等..

  • lambda函数

  • 装饰器

  • 生成器

  • 迭代器

  • 魔法函数

  • 计算机网络

  • 协议:http协议、tcp协议、udp协议等

2、进阶

Web开发

  • 同步框架:Django、Flask

  • 异步框架:Tornado、Sanic

  • Tornado框架

  • Git版本控制

  • HTTP方法以及响应码

  • 关系型数据库:MySQL、PostgreSQL、Oracle
  • 非关系型数据库:Redis、Mongo
  • 日志
  • 项目的部署
  • 实战练习

爬虫

  • 爬虫应用领域

  • 爬虫的合法性:Robots.txt

  • HTTP请求:请求行、请求头,请求体

  • 响应:响应码、响应头、响应体

  • 相关工具:Chrome Developer Tools、PostMan、Httpie、BuiltWith

  • 网络请求模块:urllib、requests

  • 数据提取:正则、XPath、Beautiful Soup、pyquery

  • 数据持久化

  • 并发下载:aiohttp、async、await、异步I/O 、协程

  • 其他:框架(Scrapy)、Selenium

数据分析

  • 数据整理库:Pandas、Numpy库

  • 数据可视化:matplotlib库、pycharts库

以上讲了一下我在学习Python过程中整理的一些知识点。 学习是一个循序渐进的过程,学习一个新技术,如果你只是去啃一本技术书籍,或者认认真真去看视频。完了你会发现你依旧写不出代码!所以建议大家在学习的过程中多敲代码。万虐终成神!敲代码,解决BUG才是学习 !

以上便是今天的分享


福利环节

福利简介:通常情况下 每周 会送出 两本Python技术书籍 ,送给经常参与互动的小伙伴(包括不限于走心留言、在看、经常阅读、分享的小伙伴)。每周末进行汇总..

本周福利 : 清华大学出版社出版的《深入浅出Python机器学习》 * 2本



同时,需要的同学也可以自己购买:


长按|关注|学Python

640?wx_fmt=jpeg


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值