欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python 列表 元组 表达式

程序员文章站 2022-05-25 08:04:14
...

列表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

运算符优先级

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