1 Python的优点
Python语言类库齐全,语法简洁,而且在linux上自带安装,在处理大数据以及自动化方面有其独有的特点。
2 Python的解释器
Python解释器用来解释python代码,比较流行的python解释器有:
CPython, 使用C解释器,将python源码解释为.pyc文件(字节码)
JPython, 使用java解释器,将python源码解释为java识别的字节码
IronPython, 使用c#解释器解释为c#识别的字节码
PyPy,解释器解释为字节码后加了一步机器码,它的特点是快
3 Python编码
在Python中设计到的编码方式:
ASCII,用8位来表示部分字符和数字
Unicode,至少16位,包含了各国所能用到的字符。
Utf-8,会对unicode进行压缩,节省不必要的空间消耗。
4 基本的数据类型
Python中基本的数据类型有:
int 整型
long长整型
float 浮点型
布尔型: True 或者 False; 等价于1或0
字符串:“This is a string”
5 复杂的数据类型
Python中复杂的数据类型有:
list 列表: li=[1,2,3,4,]
tuple 元祖: t1=(1,2,3,4)
dict 字典: dic={'k1':'v1','k2','v2'}
set 集合: {'a','b','c'}
6 代码结构及基本的流程控制
使用#注释
使用连接 (程序中一行太长,可以使用分割成好几行)
>>> 1+2+ 3 + 4 10 >>>
if..else/ if..elif..else 用来选择控制流程
for,while循环 用来控制循环
break跳出循环
continue跳到循环开始
while...else结构,如果while 循环正常结束(没有使用break 跳出),程序将进入到可选的else 段。
zip()可以用来实现并行迭代,example 如下:
>>> days = ['Monday', 'Tuesday', 'Wednesday'] >>> fruits = ['banana', 'orange', 'peach'] >>> drinks = ['coffee', 'tea', 'beer'] >>> desserts = ['tiramisu', 'ice cream', 'pie', 'pudding'] >>> for day, fruit, drink, dessert in zip(days, fruits, drinks, desserts): ... print(day, ": drink", drink, "- eat", fruit, "- enjoy", dessert) ... Monday : drink coffee - eat banana - enjoy tiramisu Tuesday : drink tea - eat orange - enjoy ice cream Wednesday : drink beer - eat peach - enjoy pie zip() 函数在最短序列“用完”时就会停止。
7 变量和常量
常量一般用大写字母来表示,用以区分变量,如 PI=3.14
8 缩进
Python 需要通过缩进来判断作用域,同一级别的代码缩进的量必须是一样的,如:
两个print显然是同一级别,那么前面的缩进必须一直,官方推荐缩进4个空格量。当然,最好使用IDE工具来编写,会自动缩进,可以省掉不少麻烦。
推荐的代码缩进风格PEP-8(http://legacy.python.org/dev/peps/pep-0008/)
9 各种运算
9.1 基本算数运算
+, -, *, /, %, **, //
//是取整除,即返回商的整数部分
9.2 比较运算
==, !=, >, <, >=, <=
比较运算结果返回布尔值,比如 2>3 会返回 False
9.3 二进制位运算
& 按位与
| 按位或
^ 按位异或
<< 左移,比如 2<<1 ,会返回4
>>右移,比如2 >>1, 会返回1
10 python中的True 和 False
布尔 False null 类型 None 整型 0 浮点型 0.0 空字符串 '' 空列表 [] 空元组 () 空字典 {} 空集合 set() |
上述赋值都会被认为是False,除此之外,其他的为True.
11 其他
列表推导
格式1: [ expression for item in iterable ]
>>> new_li=[item for item in range(10)] >>> new_li [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
格式2: [expression for item in iterable if condition]
>>> new_li = [item for item in range(10) if item %2 ==1] >>> new_li [1, 3, 5, 7, 9]
字典推导
格式:{ key_expression : value_expression for expression in iterable }
>>> word = 'letters' >>> letter_counts = {letter: word.count(letter) for letter in word} >>> letter_counts {'l': 1, 'e': 2, 't': 2, 'r': 1, 's': 1}