#博文为教材《从python开始学编程》Vamei著 一书的读书笔记,干货内容并非博主原创
2-1.运算
1.数值运算
在python中能直接进行数值运算:
字符串加法运算:
2.逻辑运算
在二进制体系中,可以用1和0代表“真”和“假”两种状态。在python中,我们使用True和False两个关键字来表示真假,True和False这种数据被称为布尔值(Boolean)。
“与”运算就像是连接的两座桥,只有在两座桥都顺畅时,才能通过;“或”运算就像两座并行的桥,只需要任意一座桥通畅,就能到达对岸。
逻辑非运算:
3.判断表达式
判断表达式的本质是用数学形式写出来的命题
4.运算优先级
在python运算中,众多符号存在的情况下,需考虑运算优先级的问题。不同的运算符有不同的优先级:
乘方:**
乘除:* /
加减:+ -
判断:== > >= < <=
逻辑:not and or
同级运算符之间遵循从左往右的运算顺序,括号则会打破运算优先级,首先进行括号中的运算。
2-2.存储
1.变量
随着程序语言的发展,开始用变量的方式来存储数据,变量和内存地址类似,也起到了索引数据的功能。新建变量时,计算机在空闲的内存中开辟存储空间,用来存储数据。与内存地址不同的是,根据变量的类型,分配的变量空间会有大小变化。
python中,用“=”来赋值(Assignment)。
变量名直接参与运算,这是代数在编程中的应用。
2.变量的类型
python能自由改变变量类型的特征被称为动态类型(dynamic typing)。并不是所有的语言都支持动态类型,在静态类型(static typing)语言中,变量都有事先说明好的类型,特定类型的数据必须存入特定类型的变量,所以相比静态类型,动态类型更加灵活便利。
想知道变量的类型,可以通过type()这一函数查看:
常见的类型包括:
整型:int —————————— a=100
浮点型:Float ———————— b=100.0
字符串:str ————————— c=“abc”
布尔值:Boolean/bool ———— d=True
3.序列
python中有一种类型的变量,如同容器一般收纳多个数据。序列(sequence),词典(dictionary)都是容器型变量。
序列就像一队排列好的士兵,是有顺序地排列的数据集合。序列所包含的单个数据称为一个元素(element),序列可以是包含多个元素的,也可是没有任何元素的空集。
序列有两种:
元组(tuple)与列表[list]
元组一旦建立,将不能改变其中的各个元素,故有些翻译也作“定值表”,用()表示。
列表的元素是可以改变的,故也可认为元组是一种特殊的定值列表,用[]表示。
同一个序列可以包含不同类型的元素:
序列元素还可以是另一个序列:
#由于元组的不可变元素性,编程过程中很少建立空元组;列表则经常建立起空表。
序列元素的位置索引称为下标(index),python中序列的下标从0开始。列表的元素可变更,我们可以通过下标来给列表中的元素进行赋值:
对序列来说,除了通过下标找到单个元素外,还能通过范围引用的方式找到多个元素,引用的基本样式是:
序列名[下限:上限:步长]
下限为起始元素下标,上限为结束元素下标,步长默认值为1,得出的片段不包括上限下标指向的元素。
除此之外的尾部引用语法:
4.词典
词典与列表最大的区别在于,可以自定义建立数据的索引,且是一个松散的存储结构,没有顺序制约。
2.3 结构
1.if语句
2.结构
用缩进来表明代码的从属关系是python的特色,为了区分出隶属关系,python中的缩进是强制的。
3.eilf
除此之外,还能用if结构嵌套:
2.4 循环
1.for循环
在python中,循环有for和while两种。
这个循环就是每次从列表[3,4.4,'life','saltfish']中取一个元素,然后将这个元素赋值给a,之后执行print(a)函数,把这个元素依次打印出来。
序列中的元素的个数决定了循环重复的次数,上例中有4个元素,所以print()会执行4次。
有时候我们想简单地重复特定的次数,不想建立序列,那么我们就可以使用python提供的range()函数:
程序中的5向range()函数说明了需要重复的次数,故隶属于for的程序被执行了五次:
i为每次循环提供了计数功能(可以看到,range()提供的计数也是从0开始的)。
2.while循环
※ while后面紧跟着一个条件,若条件为真,则while会不停地循环属于它的语句,当条件为假时,程序才会停止。
3.跳过或终止
循环结构还提供了两个有用的语句,可以在循环结构内部使用,用于跳过或终止循环:
continue:跳过循环的这一次执行,进行下一次的循环操作
break:停止执行整个循环。
※跳过了2
※在2处终止了循环