Python作为一门学习上手快、开发效率高、代码优雅的编程语言,一直以来都是最热门的几种语言之一,甚至在进入2019年之后热度超过了十几年的霸主Java,成为最受欢迎的语言。Python一直有胶水语言之称,应用场景相当广泛,不止有爬虫、数据分析,更可以加入到WEB、大数据、AI的应用池之中,而且开发效率相当恐怖。
作为一名技术人,如果2020年你还没有学会Python,那必须立刻抓紧开始学习了:去扫一眼最新的招聘网站信息,几乎没有什么岗位不要求Python能力了。
学习之前,一定要梳理清楚Python的岗位路线,小编正好有一份2020年最新的技术路线图,由从业十年以上课程总监整理,分享给大家。
段一:Python基础入门与进阶
具备一个初级python开发工程师基本能力,掌握基本算法,编程思维和基础编程技术,可用Python独立开发出功能性小程序,以及简单工作场景的辅助类工具。
阶段二:高并发编程&网络编程&数据库开发&数据解析(4大应用技术方向)
掌握Python基本语法和高级开发技术,并熟练掌握Mysql数据库开发具备数据库应用、设计能力,熟悉RESTful API设计,掌握常用的异步框架,网络编程,线程安全,IO模型等技术,熟练掌握linux平台技术,有算法基础,可灵活进行数据解析处理,具有良好的编码习惯,注重代码的复用,系统的可维护性和健壮性。已经具备Python初中级开发工程师能力,市面薪资可达6.5K-8.5K。
业方向一 web前后端开发(python开发工程师)
熟悉HTML/JavaScript/CSS,掌握React.js等前端框架开发,熟悉页面架构和布局,熟悉MySQL、Redis等,具备数据库应用、设计能力,熟练掌握Django/Flask等Web后端开发框架,熟练掌握网络通讯协议和多线程、多进程并发技术,了解架构设计、实现原理和安全防护加固,掌握高并发web网站、缓存加速技术,有1-2个完整项目经验。已经具备Python web中高级级开发工程师能力,市面薪资可达12K-18K。学习Python有困难可以加下扣扣裙:四八三五四六四一六
第一部分 Python基础语法
第一部分 Python基础语法1. 认识Python1.1 Python 简介Python 的创始人为吉多·范罗苏姆(Guido van Rossum)。
Python 的设计目标:
- 一门简单直观的语言并与主要竞争者一样强大
- 开源,以便任何人都可以为它做贡献
- 代码像纯英语那样容易理解
- 适用于短期开发的日常任务
Python 的设计哲学:
- 优雅、明确、简单
Python 开发者的哲学是:用一种方法,最好是只有一种方法来做一件事
Python 是完全面向对象的语言,在 Python 中一切皆对象。
可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把这部分程序用 C 或 C++ 编写,然后在 Python 程序中使用它们。
1.2. 第一个Python程序执行 Python 程序的三种方式:解释器、交互式运行、IDE运行Python 是一个格式非常严格的程序设计语言。python 2.x 默认不支持中文。
- ASCII 字符只包含 256 个字符,不支持中文
- Python 2.x 的解释器名称是 python
- Python 3.x 的解释器名称是 python3
为了照顾现有的程序,官方提供了一个过渡版本 —— Python 2.6。
提示:如果开发时,无法立即使用 Python 3.0(还有极少的第三方库不支持 3.0 的语法),建议
- 先使用 Python 3.0 版本进行开发
- 然后使用 Python 2.6、Python 2.7 来执行,并且做一些兼容性的处理
IPython 是一个 python 的 交互式 shell,比默认的 python shell 好用得多,它支持 bash shell 命令,适合于学习/验证 Python 语法或者局部代码。集成开发环境(IDE,Integrated Development Environment)—— 集成了开发软件需要的所有工具,一般包括以下工具:
- 图形用户界面
- 代码编辑器(支持 代码补全/自动缩进)
- 编译器/解释器
- 调试器(断点/单步执行)
- ……
PyCharm 是 Python 的一款非常优秀的集成开发环境
PyCharm运行工具栏1.3. PyCharm 的设置PyCharm 的 配置信息 是保存在 用户家目录下 的 .PyCharmxxxx.x 目录下的,xxxx.x 表示当前使用的 PyCharm 的版本号1.3.1 恢复 PyCharm 的初始设置:
- 关闭正在运行的 PyCharm
- 在终端中执行以下终端命令,删除 PyCharm 的配置信息目录:
$ rm -r ~/.PyCharm2016.3
- 重新启动 PyCharm
1.3.2 PyCharm 安装和启动步骤:
- 执行以下终端命令,解压缩下载后的安装包
$ tar -zxvf pycharm-professional-2017.1.3.tar.gz
- 将解压缩后的目录移动到 /opt 目录下,可以方便其他用户使用
/opt 目录用户存放给主机额外安装的软件
$ sudo mv pycharm-2017.1.3/ /opt/
- 切换工作目录
$ cd /opt/pycharm-2017.1.3/bin
- 启动 PyCharm
$ ./pycharm.sh
1.3.3 设置启动图标
- 在专业版中,选择菜单 Tools / Create Desktop Entry... 可以设置任务栏启动图标
- 注意:设置图标时,需要勾选 Create the entry for all users
- 快捷方式文件
- /usr/share/applications/jetbrains-pycharm.desktop
在 ubuntu 中,应用程序启动的快捷方式通常都保存在 /usr/share/applications 目录下
1.3.4 卸载之前版本的 PyCharm要卸载 PyCharm 只需要做以下两步工作:
- 删除解压缩目录
$ sudo rm -r /opt/pycharm-2016.3.1/
- 删除家目录下用于保存配置信息的隐藏目录
$ rm -r ~/.PyCharm2016.3/
如果不再使用 PyCharm 还需要将 /usr/share/applications/ 下的 jetbrains-pycharm.desktop删掉
1.4. 多文件项目的演练
- 开发 项目 就是开发一个 专门解决一个复杂业务功能的软件
- 通常每 一个项目 就具有一个 独立专属的目录,用于保存 所有和项目相关的文件
- 在 PyCharm 中,要想让哪一个 Python 程序能够执行,必须首先通过 鼠标右键的方式执行 一下
- 对于初学者而言,在一个项目中设置多个程序可以执行,是非常方便的,可以方便对不同知识点的练习和测试
- 对于商业项目而言,通常在一个项目中,只有一个 可以直接执行的 Python 源程序
让选中的程序可以执行2.2 多行注释(块注释)
- 要在 Python 程序中使用多行注释,可以用 一对 连续的 三个 引号(单引号和双引号都可以)
"""
这是一个多行注释
在多行注释之间,可以写很多很多的内容……
"""
print("hello python")
提示:
- 注释不是越多越好,对于一目了然的代码,不需要添加注释
- 对于 复杂的操作,应该在操作开始前写上若干行注释
- 对于 不是一目了然的代码,应在其行尾添加注释(为了提高可读性,注释应该至少离开代码 2 个空格)
- 绝不要描述代码,假设阅读代码的人比你更懂 Python,他只是不知道你的代码要做什么
2.3 代码规范:
- Python 官方提供有一系列 PEP(Python Enhancement Proposals) 文档,其中第 8 篇文档专门针对 Python 的代码格式 给出了建议,也就是俗称的 PEP 8:
- 文档地址:https://www.python.org/dev/peps/pep-0008/
- 谷歌有对应的中文文档:http://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_style_rules/
3. 运算符3.1 算数运算符是完成基本的算术运算使用的符号,用来处理四则运算,而“+”和“*”还可以用来处理字符串。运算符描述实例+加10 + 20 = 30-减10 - 20 = -10*乘10 * 20 = 200/除10 / 20 = 0.5//取整除返回除法的整数部分(商) 9 // 2 输出结果 4%取余数返回除法的余数 9 % 2 = 1**幂又称次方、乘方,2 ** 3 = 83.2 比较(关系)运算符运算符描述==检查两个操作数的值是否 相等,如果是,则条件成立,返回 True!=检查两个操作数的值是否 不相等,如果是,则条件成立,返回 True>检查左操作数的值是否 大于 右操作数的值,如果是,则条件成立,返回 True<检查左操作数的值是否 小于 右操作数的值,如果是,则条件成立,返回 True>=检查左操作数的值是否 大于或等于 右操作数的值,如果是,则条件成立,返回 True<=检查左操作数的值是否 小于或等于 右操作数的值,如果是,则条件成立,返回 True
- Python 2.x 中判断 不等于 还可以使用 <> 运算符
- != 在 Python 2.x 中同样可以用来判断 不等于
3.3 赋值运算符
- 在 Python 中,使用 = 可以给变量赋值。在算术运算时,为了简化代码的编写,Python 还提供了一系列的 与 算术运算符 对应的 赋值运算符,注意:赋值运算符中间不能使用空格。
运算符描述实例=简单的赋值运算符c = a + b 将 a + b 的运算结果赋值为 c+=加法赋值运算符c += a 等效于 c = c + a-=减法赋值运算符c -= a 等效于 c = c - a*=乘法赋值运算符c *= a 等效于 c = c * a/=除法赋值运算符c /= a 等效于 c = c / a//=取整除赋值运算符c //= a 等效于 c = c // a%=取 模 (余数)赋值运算符c %= a 等效于 c = c % a**=幂赋值运算符c **= a 等效于 c = c ** a3.4 身份运算符身份运算符比较两个对象的内存位置。常用的有两个身份运算符,如下所述:运算符描述示例is判断两个标识符是不是引用同一个对象x is y,类似 id(x) == id(y)is not判断两个标识符是不是引用不同对象x is not y,类似 id(a) != id(b)辨析
- is 用于判断 两个变量引用的对象是否为同一个
- == 用于判断 引用变量的值 是否相等
3.5 成员运算符Python成员运算符测试给定值是否为序列中的成员。 有两个成员运算符,如下所述:运算符描述in如果在指定的序列中找到一个变量的值,则返回true,否则返回false。not in如果在指定序列中找不到变量的值,则返回true,否则返回false。3.6 逻辑运算符运算符逻辑表达式描述andx and y只有 x 和 y 的值都为 True,才会返回 True否则只要 x 或者 y 有一个值为 False,就返回 Falseorx or y只要 x 或者 y 有一个值为 True,就返回 True只有 x 和 y 的值都为 False,才会返回 Falsenotnot x如果 x 为 True,返回 False如果 x 为 False,返回 True3.7 运算符优先级
- 以下表格的算数优先级由高到最低顺序排列:
运算符描述**幂 (最高优先级)* / % //乘、除、取余数、取整除+ -加法、减法<= < > >=比较运算符== !=等于运算符= %= /= //= -= += *= **=赋值运算符is is not身份运算符in not in成员运算符not or and逻辑运算符<补>程序执行原理
Python程序执行示意图
- 操作系统会首先让 CPU 把 Python 解释器 的程序复制到 内存 中
- Python 解释器 根据语法规则,从上向下 让 CPU 翻译 Python 程序中的代码
- CPU 负责执行翻译完成的代码
Python 的解释器有多大?
- 执行以下终端命令可以查看 Python 解释器的大小
学习Python有困难可以加下扣扣裙:四八三五四六四一六
最后:如果你正在学习Python的路上,或者准备打算学习Python、那么小编这套学习教程免费赠送给你喔!