python读书笔记-《简明python教程》上

1月15日

《简明python教程》上
基本结构:
基础概念+控制流+函数+模块+数据结构+面向对象+I/O+异常+标准库+其他
 
1、概念
1-0    退出python
linux:ctrl-D;windows:ctrl-z
1-1     ‘’,“”,“”“”“”的区别
''和""用来指示字符串,其中的空格、制表符等将保留。
字符串是不可变得。
1-2     “\”的两种用途:转义符、连接两行
1-3     自然字符串r“”或R“”;一定要用自然字符串处理正则表达式,否则要用很多\
1-4     unicode书写国际文本:u“”
注意字符间的转换可能会用到unicode和utf-8
1-5     分号表示一个逻辑行/语句的结束。这样可以在一行写多个语句。
1-6     同一层次的语句必须有相同的缩进。建议使用一个tab或者2或4个空格。
1-7     表达式分解为运算符和操作数。

5.1 运算符与它们的用法

运算符

名称

说明

例子

**

返回x的y次幂

3 ** 4得到81(即3 * 3 * 3 * 3)

/

x除以y

4/3得到1(整数的除法得到整数结果)。4.0/3或4/3.0得到1.3333333333333333

//

取整除

返回商的整数部分

4 // 3.0得到1.0

%

取模

返回除法的余数

8%3得到2。-25.5%2.25得到1.5

<<

左移

把一个数的比特向左移一定数目(每个数在内存中都表示为比特或二进制数字,即0和1)

2 << 2得到8。——2按比特表示为10

>>

右移

把一个数的比特向右移一定数目

11 >> 1得到5。——11按比特表示为1011,向右移动1比特后得到101,即十进制的5。

&

按位与

数的按位与

5 & 3得到1。

|

按位或

数的按位或

5 | 3得到7。

^

按位异或

数的按位异或

5 ^ 3得到6

~

按位翻转

x的按位翻转是-(x+1)

~5得到6。

<

小于

返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。

5 < 3返回0(即False)而3 < 5返回1(即True)。比较可以被任意连接:3 < 5 < 7返回True。

<=

小于等于

返回x是否小于等于y

x = 3; y = 6; x <= y返回True。

==

等于

比较对象是否相等

x = 2; y = 2; x == y返回True。x = 'str'; y = 'stR'; x == y返回False。x = 'str'; y = 'str'; x == y返回True。

!=

不等于

比较两个对象是否不相等

x = 2; y = 3; x != y返回True。

not

布尔非

如果x为True,返回False。如果x为False,它返回True。

x = True; not y返回False。

and

布尔与

如果x为False,x and y返回False,否则它返回y的计算值。

x = False; y = True; x and y,由于x是False,返回False。在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算.

or

布尔或

如果x是True,它返回True,否则它返回y的计算值。

x = True; y = False; x or y返回True。短路计算在这里也适用。

1-8     运算符优先级
5.2 运算符优先级 (由低到高) 
 

运算符(由低到高)

描述

名称(一些特殊的方法)

说明

1.lambda

Lambda表达式

13.*,/,%

乘法、除法与取余

2.or

布尔“或”

14.+x,-x

正负号

3.and

布尔“与”

15.~x

按位翻转

4.not x

布尔“非”

16.**

指数

5.in,not in

成员测试

17.x.attribute

属性参考

6.is,is not

同一性测试

18.x[index]

下标

7.<,<=,>,>=,!=,==

比较

19.x[index:index]

寻址段

8.|

按位或

20.f(arguments...)

函数调用

9.^

按位异或

21. (experession,...)

绑定或元组显示

10.&

按位与

22. [expression,...]

列表显示

11.<<,>>

移位

23.{key:datum,...}

字典显示

12.+,-

加法与减法

24.'expression,...'

字符串转换

一些特殊的,比如赋值运算符那样的运算符是由右向左结合的,即a = b = c被处理为a = (b = c)。分解为:b=c;a=b

1-9     三种控制流语句为if,for,while
if 条件1:
     语句1
elif 条件2:
     语句2
else::
     其他语句
1-10
while 条件/表达式:
     语句
     if……
     else……
else:#可选
1-11
for…in#递归地使用队列中的每个项目
for i in range(1,5):
     语句
else:#可选
 
1-12
range返回一个序列的数。这个序列从第一个数开始到第二个数为止。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。如果我们为range提供第三个数,那么它将成为步长。例如,range(1,5,2)给出[1,3]。记住,range 向上 延伸到第二个数,即它包含第二个数。
 
1-13
break
continue
上一篇:commonJS


下一篇:关于JS面向对象中原型和原型链以及他们之间的关系及this的详解