学什么,怎样学
python
你想学python吗?
2016年,Python取代Java成为高校中最受欢迎的语言,从那时起它受欢迎的程度就没有减退过。
但是,随着新时代的到来,Python正在不断发展壮大。如果你阅读编程和技术新闻或博客文章,那么你可能已经发现了Python的兴起,因为许多流行的开发人员社区,包括StackOverFlow和CodeAcademy都提到了Python作为主要编程语言的兴起。
【学习路线】
1.Python基础语法-主线任务1
使用python就像一个自由度超高的游戏,你得学会以下几点python基础语法,拿到进入这个游戏世界的钥匙:
计算机组成原理
Python开发环境
Python变量
流程控制语句
高级变量类型
函数应用
文件操作
面向对象编程
异常处理
模块和包
2.Python高阶语法-主线任务2
学习完基础语法,写写算法题不成问题,但是对应更复杂的环境和需求需要学习一些高阶内容,学完以下内容就可以刷副本,攒经验升级了:
网络编程并发编程
数据库编程
正则表达式
Linux系统应用
函数的高级应用Python语法高阶
学完以上两个主线任务就可以进行正式的工作内容,副本1,2,3一组紧密相关,副本4单独一组,副本5,6一组紧密相关,也可以从这三组选一个来学尽快加入工作
3.副本1-前端开发
看你对做个网页做个app有没有兴趣,学完副本3,4可以动手做一个相关的产品,来以此去求职,当然做的质量越高,学的东西就要越多,工资也是成正比的,HTML,CSS,PS的应用,Javascript,jQuery,Vue.js框架。
4.副本2-后端开发
对于网页,游戏等的后台支持,需要熟练掌握框架的使用,掌握数据库原理及相关优化:
Djano框架
数据库mySQL
Redis
MongoDB
git项目管理
接口开发
flask框架
5.副本3-爬虫
爬虫就是爬取网络上的数据,无论是网页还是app,只要你能看到的数据都能爬取下来,当然有爬虫就有反爬虫,两种职业互相博益还是挺有意思的,精通爬虫必须要精通副本1-前端开发,你得知道网页时怎么来的,才能更好的爬取下来,爬下来的数据也可以为副本4-数据分析做准备:
爬虫开发
scrapy框架
索引操作
备份和回复
定制化爬虫采集系统
6.副本4-自动化运维
主要利用shell来做一些自动化脚本的发布
7.副本5-数据分析
数据分析主要学习两个科学计算库numpy和pandas,两个可视化库matplotlib和seaborn,学完之后数据清洗,数据展示没有问题,用python画出了图才能给别人讲出有意思的故事,同时也能为学习副本6-人工智能打下牢固的基础:数据结构和算法
科学计算pandas和numpy
数据可视化matplotlib和seaborn
金融数据分析等。
8.副本6-人工智能
python之所以能火,主要是因为人工智能的风口,所谓风口上的 都会飞,那么python也许就是风口上的代码,人工智能的两大目的分别是分类和预测,主要在识别图片和预测未来等应用场景,同时python又有最大开源库可以调用这些包来应用,所以应用起来非常方便,但是如果想从事人工智能行业,需要一定的数学基础,了解底层算法,才能更好的进入到神经网络和深度学习的领域,机器学习量化交易机器视觉,深度学习,自然语言处理相关问题。
【学习python基础知识】
1、Python 基础语法
计算机组成:硬件、软件、计算机运行程序方式、Python 语言的特点、应用领域、Python IDE、程序注释:单行注释、多行注释;变量的作用、定义、 命名规则、变量的数据类型、查看变量类型、输入和输入函数、算术运算符、赋值运算符、复合运算符、类型转换、分支结构 if...else 、循环结构、while、 break、continue、for、for...else
2、python 容器
字符串的定义、遍历、下标、切片、常用方法(find、 index、count、replace、split、capitalize、title、 startwith、endwith、lower、upper、ljust、rjust、 center 等)、列表定义、语法格式、列表嵌套、列表的遍历、列表常用操作方法、列表推导式、元组定义、语法格式、常用操作方法、字典定义、语法格式、字典的遍历、常用操作方法、 字符串、列表、容器、字典的公共操作 :range 、enumerate、max、min、len 函数、del 函数;运算符+、*、in、not in 在容器中的使用
3、函数和文件操作
函数定义和调用语法、def 语句、return 语句、函数传参(位置参数、关键字参数)、缺省参数、不定长参数、函数文档编写 、函数嵌套、全局变量和局部变量、Python 变量作用域 LEGB、global 语句,nonlocal 语句、组包和拆包、递归函数、 匿名函数 lambda 表达式、文件操作、文件打开与关闭、文件读写操作、文件目录操作
4、面向对象
类和对象、类的定义格式、添加和获取对象属性、常见的魔术方法、继承、公有权限和私有权限、多态的概念和意义、多态的实现、类属性和实例属性、 类方法和静态方法、异常的概念、捕捉异常、as 使用、else使用、finally 使用、异常的传递、自定义异常、raise 抛出异常、 模块的概念和作用、制作模块、模块的导入方式 、all的作用、name的作用、包的概念和作用、制作包、包的导入、案例:学生管理系统
5、Linux 操作系统
操作系统的作用、常见的操作系统、虚拟机使用、Linux 发行版系统、常用命令:文件、目录操作(创建、删除、复制、移动)、 权限属性修改,文件查找与检索、打包压缩、用户权限管理:添加删除用户,设置用户权限;远程操作 ssh、scp,软件安装与卸载,vim 编辑器
6、多任务编程
多任务的概念、执行方式、多进程:概念、作用、状态;进程创建、传参,multipro-cessing 模块,getpid()getppid()函数;daemon进程、 多线程:概念、作用;线程创建、传参,threading 模块,线程同步问题,互斥锁,死锁
7、Python 网络编程
网络知识:ip 地址、端口、网络通信过程,tcp 协议、网络编程:socket 套接字、tcp 服务端和客户端程序开发,send 和 recv 原理、 案例:多任务版 tcp 服务器
8、静态 web 服务器
HTTP 协议概念、浏览器访问 web 服务器的过程、url的概念和组成、HTTP 请求报文和响应报文格式、 案例:静态 web 服务器
9、HTML
HTML 介绍、基本结构,vscode 的使用、常用标签:标题、链接、图片、表格、列表、表单
10、CSS
css 的介绍、css引入方式、css 常用选择器、css 布局常用属性、css 文本常见属性、css 元素溢出设置、css 显示特性、盒子模型
11、Javascript
Javascript 介绍、Javascript 的引入方式、JS 的基础语法、JS 变量和常量、数据类型、数据类型装换、 JS运算符、流程控制、分支结构、循环结构、函数、数组、字符串 String、JS 获取和设置元素标签属性,JS定时器、 jquery 介绍、jquery 选择器、jquery 选择集过滤,jquery 设置和获取元素属性内容、jquery 事件、事件代理、 Javascript 对象、json、ajax
12、数据库 MySQL
数据库介绍、MySQL 数据库的安装使用、SQL 作用、数据类型和约束、图形化客户端 Navicat、命令行客户端使用、MySQL 数据库、数据表操作、 基本查询操作:as 、distinct、order by、limit、groupby、having、聚合函数、内连接、左连接、右连接、自连接、子查询、 数据库设计三范式、E-R 模型、外键的使用、分组聚合组合使用、修改表结构、事物、索引、PyMysql、Python 操作数据库
13、正则表达式
正则表达式介绍、匹配单个字符、匹配多个字符、匹配开头和结尾、贪婪模式和非贪婪模式,分组、re 模块:match 和 group 的使用
14、Python 进阶
闭包的介绍和语法格式、nonlocal 的使用、装饰器的介绍和语法格式、装饰器的基本使用、多个装饰器装饰一个函数、带参数的装饰器、类装饰器、 property 属性、with 上下文管理器、生成器的使用、深拷贝和浅拷贝
15、mini-web 框架
web 框架概述:框架和 web 服务器的关系、静态资源、动态资源、WSGI作用、框架的实现、模版 HTML 文件的替换、路由功能代码的实现、 从数据库查询数据并显示、logging 日志的使用
[1]
[1] 文自知乎作者编程星球
END
文字来源:知乎 网络
图文排版:杨强
图文审核:曾覃鑫 李安诺