Python 列表 元组 表达式

列表list的常用方法

-增:+,append,insert,extend
-删:del,clear,pop,remove
-改:直接用索引
-查:count,index
-其他:copy,reverse,sort,切片

+

a = ["hi"]
b = [1,2,3]
c = a + b
print(c)  #[1,2,3,`hi`]

append

-在列表末尾添加一个元素,一次只能添加一次,ID不变
a = [1,3,"sdf"]
a.append("df")
print(a)  #[1,3,`sdf`,`df`]

insert

-指定列表索引插入一个元素
a = [2,4,"df","rg"]
a.insert(1,34)
print(a)  #[2,34,4,"df","rg"]
-如果索引大于列表长度,则添加到列表末尾

extend

-对列表进行扩展,即对原列表添加一个列表或字符串
a = [2,3,"sd"]
b = ["df",4]
a.extend(b)
print(a)  #[2,3,`sd`,`df`,4]
a.extend("asd")
print(a)  #[2,3,`sd`,`df`,4,`a`,`s`,`d`]

del

-del是Python内置方法,不只是列表当中的方法
-删除列表中指定索引元素或者整个列表
a = [2,4,"df"]
del a[1]
print(a)  #[2,`df`]
del a
print(a)  #报错,a不存在

clear

-清空列表中的元素
a = [2,3,4]
a.clear()
print(a)  #[]

pop

-弹出指定索引元素,默认弹出最后一个元素
a = [2,3,"sd"]
a.pop(0)
print(a)  #[3,`sd`]
a.pop()
print(a)  #[3]

remove

-直接移除指定元素,如果该元素有多个,则只移除从左向右的第一个该元素
a = [3,2,"df",3]
a.remove(3)
print(a)  #[2,"df",3]

-按索引进行元素更改
a = [1,2,3,4]
a[2] = 5
print a  #[1,2,5,4]

count

-统计元素在列表中出现的次数
a = [1,2,4,2,5,6]
b = a.count(2)
print(b)  #2

index

-查元素的索引
a = [2,4,3,1,5,6,3]
b = a.index(3)
c = a.index(3,1)
d = a.index(3,3,6)
print(b)  #2  默认从0索引开始到末尾第一个3位置的索引是2
print(c)  #2  从1索引开始到末尾第一个3位置的索引是2
print(d)  #6  从3索引开始到6索引第一个3位置的索引是6

其他

in 判断元素是否在列表中

a = [1,2,3,4]
2 in a  #true

copy 复制列表

a = [1,2,3]
b = a
c = a.copy()
id(b) = id(a)  #b的id等于a的id
id(c) !=id(a)  #c的id不等于a的id

reverse 把列表里的元素位置完全颠倒

a = [1,2,3]
a,reverse()
a = [3,2,1]

sort

-把列表里元素按ASCII表从小到大排序
-只能同类型元素排序,字母和数字无法排序
a = [3,2,5,1]
a.sort()
a = [1,2,3,5]
b = ["g",E,"a"]
b.sort()
a =["E","a","g"]

元组

count

-统计元素在元组中出现的次数
a = (1,2,4,2,5,6)
b = a.count(2)
print(b)  #2

index

-查元素的索引
a = (2,4,3,1,5,6,3)
b = a.index(3)
c = a.index(3,1)
d = a.index(3,3,6)
print(b)  #2  默认从0索引开始到末尾第一个3位置的索引是2
print(c)  #2  从1索引开始到末尾第一个3位置的索引是2
print(d)  #6  从3索引开始到6索引第一个3位置的索引是6

表达式

-由一个或者几个数字或者变量和运算符组合成的一行代码
-通常会返回一个结果

运算符

-由一个以上的值经过变化得到新值的过程就叫运算
-用于运算的符号就叫运算符

运算符分类

-算术运算符
-比较或者关系运算符
-赋值运算符
-逻辑运算符
-位运算
- 身份运算符
- 成员运算

算术运算符

-进行算术运算的符号
- python没有自增自减运算符
- +,-,*,/和正常算术运算符一样

%是取余运算符,取两个数字相除所得的余数

a = 9 % 4
print(a)  #1

//表示取商运算,也叫地板除

a = 9 // 4
print(a)  #2

**表示幂运算

a = 9 ** 2
print(a)  #81		

比较运算符

- 对两个变量或者值进行比较的运算符
- 比较的结果是布尔值,即true或false

== 等于号

a = 3 ** 4
b = a == 80
print(b)  #false  执行顺序是 1 计算3的四次幂 2 判断a是否等于80 3 把判断结果赋值给b

!= 不等于号

print(4 != 5) #true

> 大于

< 小于

>= 大于等于

<= 小于等于

赋值运算符 =

a = 1
b = c = 3
a += 1  #a = a + 1  同理 -= ,*=,/=.//=,%=,**=

逻辑运算符

- 对布尔值进行计算的符号
- and 逻辑与
- or 逻辑或
- not 逻辑非
- Python中逻辑运算没有异或运算

运算规则

- and看做乘法,or看做加法
- true看做1,false看做0
- 则逻辑运算就能转换成整数数学运算
- 最后结果是0则为false,1则为true
a = true
b = false
c = true
d = a and b or c  #d = 1 * 0 + 1
print(d)  #1

逻辑运算的短路问题:

- 逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再计算,直接返回
a = true or .......  #a的值一定是true,则运行到or的时候,整个表达式不再向下计算

身份运算

- is:用来检测两个变量是否是同一变量
- is not:两个变量不是同一变量
a = 4
b = 4
print(a is b)  #true

运算符优先级

- 括号内具有最高优先级
- 优先级表格
	**  指数 (最高优先级)
	~ + -  按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
	* / % //  乘,除,取模和取整除
	+ -  加法减法
	>> <<  右移,左移运算符
	&  位 'AND'
	^ |  位运算符
	<=  <  > >=  比较运算符
	<>  ==  !=  等于运算符
	=  %=  /=  //=  -=  +=  *=  **=  赋值运算符
	is is not  身份运算符
	in not in  成员运算符
	not and or  逻辑运算符

猜你喜欢

转载自blog.csdn.net/xiaogeldx/article/details/82982570