学习一门新的计算机语言对于新开发者来说很难,因为毕竟要掌握很多技术和术语,学习第一门计算机语言需要4-6个月才能真正理解如何使用。但对于开发成手来说,捞干货比较快,因此本文主要面向3年以上工作经验的程序员,速度会有点快,属于Python语言区别于其他语言特性的会被重点标红。
废话不多说,跟着杨老师的步伐,我们马上开始:
1、安装:
下载略,环境变量设置:PATH 加上 python.exe所在路径 、PYTHONPATH = Python安装路径
HelloWorld,扩展名.py:
!/usr/bin/python3print(‘Hello World’)
运行命令:python 文件名
如中文无法解析,则加注释:
-- coding: UTF-8 --
开发工具可以选用PyCharm的社区版,老手刚上手一般比较喜欢直接用Shell/Cmd
2、语法
标识符:下划线慎用(详见面向对象),其余老样子;
断句符(似;):回车(换行不断句,行末加\);
保留字:语法用的都不能用;代码层级(似{}):缩进代替;
引号:单双引号('或")不必说,三引号("""或''')内可写多行文本。
注释:#开头
声明变量:无赋值关键字,出现即声明
赋值:a=1;连续赋值:a=b=1;映射赋值:a,b=1,2
接受输入:raw_input(提示文字)
输出:print(表达式)
3、数据类型
数字:样例略
字符串:略,转义和C一样
元组(圆括号):('a','b','c')
列表(似JSON Array):['a','b','c']
字典(似JSON Object):{键1:值1,键2:值2}
可变对象:列表(List)、字典(Dictionary);不可变对象:数字(Numbers)、字符串(String)、元组(Tuple)
列表、字典、字符串、元组可视为序列,参与序列运算
转换函数:int整,long长整,float浮点,str字串,tuple元组,list列表,dict字典
4、二目运算符
序列运算:
拼接:+ 重复:* 判断在序列中:in 判断不在序列中:not in
数学运算:加减乘除取余:+-/% 乘方:* 向下取整://
比较运算:==、!=、>、<、>=、<=
赋值:数学运算符加等号,如+=
位运算:与& 或| 异或^ 取反~ 左移<< 右移>>
逻辑运算:and、or、not
5、IF
单行if 表达式:单行代码# 多行if 表达式:代码段1# 否则if 表达式: 代码段1else: 代码段2# 连续判断if 表达式1: 代码段1elif 表达式2: 代码段2else: 代码段3
6、WHILE
单行while 表达式:语句# 多行while 表达式: 代码段# While-Elsewhile 表达式: 代码段else: 循环结束时语句
continue、break:略
跳出多层循环办法:自定义异常、封装函数返回、内层else:continue,外层执行完成后break
7、FOR
对于字符串、列表、元组,遍历的是元素;对于字典,遍历的是键。
for 迭代变量 in 序列: 循环体
for-else循环,语法同上的while
常用序列函数:len(序列) :取长度,range(整数):生成0到小于该整数的序列
8、函数
参数是默认值(可选参数)def 函数名(参数1,参数2=默认值):函数体# 可变参数def 函数名(参数1,*参数2):函数体# λ表达式函数变量 = lambda 参数列表:表达式# 指定参数调用函数名(参数1='test')# 调用λ表达式函数变量(参数)
pass语句
Python2空函数体的定义必须要有个pass填充
Python3可以不写
9、异常处理
拦截异常
try:代码段except 异常类 as 异常数据:异常处理阶段else:无异常发生代码段finally:最终执行
触发异常
Python2触发异常:raise 异常类型,异常参数# Python3触发异常:raise 异常类型(异常构造参数)
10、第三方模块
import语句:
import 模块名
from…import语句:
from 模块名 import 函数1,函数2……
模块常用函数:
11、面向对象(类)
声明:
class 类名(父类): 成员变量 def __init__(self,构造函数参数列表): 构造函数体 def 其他函数名(self,参数列表……): 函数体
self含义:代表当前对象,每个类函数第一个参数,可以改名,类似于其他语言的this
self.__class__:当前类
创建对象:类名(参数1,参数2……)
类内置属性:
__dict__:类属性
__doc__:类的文档字符串
__name__:类名
__module__:类所在模块
__bases__:类的所有父类
类可重写方法:
__init__(self):构造函数
__del__(self):析构函数,被销毁时调用
__repr__(self):转化为供解释器读取的形式
__str__(self):转化为字符串
__cmp__(self,x):对象比较
对象销毁:
del 变量,会触发__del__事件
12、常用内置模块
以上是Python语法,具体实现都是靠函数,现用现查即可。
原版帮助文档哪里找:
13、常用第三方框架
PIP – Python包管理器(Python自带),类似于Java的Maven、NodeJs的Npm、.Net的Nuget,
只要是外国包管理器,使用之前先要找国内镜像,切记
以下是常用框架,如果Python自带的模块不满足需求,可以直接上套路:
Django – MTV结构Web框架
Flask – 轻量级Web框架,类似于SpringMVC
Cubes – OLAP框架
Tornado – 非阻塞式Web框架
Scrapy – 爬虫框架
Antlr4 – 强大的语法分析器
14、总结
如果你认真阅读的话,现在你已经入门Python了,不信可以找找其他人写的python文章,是不是有了一些熟悉感呢?
接下来花1-2个小时时间做以下练习,手(fu)撕(zhi)一下代码,你就彻底掌握Python了:
1) Hello World(约1分钟)2) 斐波那契数列(约5分钟)3) 用内置open、write函数和time模块,保存当前%Y-%m-%d %H:%M:%S格式日期到文件(约5分钟)4) 用Flask做一个简单页面和一个RESTful接口,实现表单提交的数据输出到控制台、上传文件。(约30分钟)5) 试试连接一下mysql数据库,做套增删改查(约30分钟)
通过以上介绍,相信你已经了解了Python的语法了。不要怀疑,就是这么简单。