为什么学Pyhton
历史
蓬勃发展
- 伴随着人工智能的发展,
Python
成了标配语言
人工智能
- 数据处理,科学计算
map
/reduce
,PySpark
XGBoost
,TensorFlow
,Gluon
,PyTouch
,Caffe
工业界应用
Dropbox
:美国最大的在线云存储网站,每天处理10亿文件上传下载Instagram
:美国最大的图片分享网站,每天超过3千万张照片被分享Redhat
:世界上最流行的Linux
发行版本中的yum
包管理工具就是用Python
开发的- 豆瓣:公司几乎所有的业务均是通过Python开发的
- 知乎:
- 除上述之外,还有盛大、网易、阿里、土豆、新浪、果壳等公司,都在使用Python完成各种各样的任务
现状
- 最新的
TIOBE
排行榜,Python
赶超PHP
占据第五,Python
崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。 - 2017
GitHub
的repo
中,Python排名第二
工作岗位
- 数据分析
- 人工智能
- Python开发工程师
- Python高级工程师
- Python自动化测试、Python游戏开发工程师、SEO工程师、Linux运维工程师等…
优点
- 简单,容易学习
- 免费开源
- 高级语言,细节隐藏
- 解释性,可移植。一次编写,导出运行。
- 面向对象
- 可扩展。可嵌入
C
/C++
,或者使用C
/C++
提供性能 - 扩展库
缺点
- 慢了一点,多吃了一点内存
如何学好编程
基础部分
- 常用关键字
- 常量
- True
- False
- None
- 对象和容器
- class
- import
- from
- del
- 判断
- if
- elif
- else
- is
- in
- assert
- 循环
- for
- while
- continue
- break
- pass
- 异常
- raise
- try
- except
- finally
- as
- 常量
- 常用运算符
- 算术运算符
- +-*/
- %
- **
- //
- 比较运算
- >, >=
- <, <=
- ==
- !=
- 逻辑运算
- and
- or
- not
- 位运算
- >>
- <<
- &
- |
- ^
- 算术运算符
- 基本语法
- 基本数据类型
- 对象的定义和声明
- 循环和判断:for,foreach,if,while,do…
- 逻辑运算
- 位运算
- 数据结构
- 数组
- 字符串
- 系统标准库自带的数据结构,如链表,哈希表(字典)
- 如何实现常用数据结构:链表,堆栈,二叉树…
- 输入输出
- 标准输入输出:print,echo,input…
- 文件读写:文本/二进制
- 格式化字符串
- 异常处理
- 抛出和捕获异常:try/catch,try/except…
- 异常和错误的区别和应用场合
- 缩进
- 注释
- 多行代码表示
- 中文支持
进阶提高
- 数据库访问【业务系统,90%都是做的代码去执行SQL,对数据库的增删改查】
- 建立连接
- 执行SQL查询
- 读取查询记录
- 修改/插入/删除数据
- 面向对象
- 继承
- 多态
- 静态变量和方法
- 工程化
- 常用框架:Flask,Django,gRPC,Thrift等等
- 单元测试
- 日志,监控
- 其它
- 多线程/进程
- 匿名函数
- 语言相关特定知识
- 常用算法
- 分治
- 贪心
- 动态规划
突破舒适区
不要自我设限
- 我肯定不行
- 我可能不行
- 我可能行
- 我肯定行
Prictice makes perfect
- WATCH
- DO
- READ