[]代表列表、()代表元组、{}字典

列表

append 尾部添加(追加) 只能在列表的尾部进行添加,只能再其尾部加入,并且一次只能插入一个
for 可以遍历插入

list=['这','是','个','表']
list.append('对')
print(list)

一次插入一个,并且只能是一个
列表、元组、字典(Python day10)


inster 是根据下标插入,一次插入一个,只能是一个

list.insert(1,'布')
print(list)

列表、元组、字典(Python day10)


二维列表,也叫链表的嵌套

list2=['这','有','个','表',['这是嵌套的表']]
print(list2)

列表、元组、字典(Python day10)
嵌套的这个表也只占一个下标


extend 可迭代对象 将一个列表中的元素逐个添加到另外一个列表

list3=['你','好','我',[],'!']
a=['####','$$$$']
list3.extend(a)
print(list3)

列表、元组、字典(Python day10)
注意是逐个,所以并不能将要插入的对象放在指定的子列表中


列表下标从0开始 获取元素 num[下标]

num=[2,3,4,5,6,'^',8]
print(num[2:len(num):2])

注意len()括号里面要加入我们要求的那个列表名字
列表、元组、字典(Python day10)


列表的遍历
遍历要用for来做

num=[2,3,4,5,6,'^',8]
for e in  num:
    print(e,end=' ')

遍历时类型可以不一样
列表、元组、字典(Python day10)


使用多个变量名接受元素

bianliang1,bianliang2=['我是变量1',")))))))))"]
print(bianliang1)
print(bianliang2)

列表、元组、字典(Python day10)

可以同时赋值变量不假,但是不能同时输出


两个列表进行相加

biangliang1='我是变量1'
bianliang2=')))))))))'
biangliang3=biangliang1+bianliang2
print(biangliang3)


如何给变量和列表同时赋值呢
*语法是:变量1,变量2=[]

lst1,*lst2= [1,2,3,4,5,6,7,8,9]
print(lst2)
#数字1给了lst1

这是列表2
列表、元组、字典(Python day10)


列表排序,默认是升序
语法是:表.sort()

a=[34,545,656,75,32,43,57]
a.sort()#可以什么都不加,也可加入条件,比如降序条件
print(a)#数字可以
a=["c","r","n","a","b","e"]
#a="c","r","n","a","b","e"竟然不报错
a.sort()
print(a)#字母也可排序

表.sort(),不能赋值给任何东西,括号可以加入条件
列表、元组、字典(Python day10)


表.sort() ,默认是先把大写往前排

a=["AbD","abc","aBe"]
key=str.lower
a.sort()  # 默认是先把大写往前排
a.sort(key=str.lower)  # 指定  key=str.lower 字母按照首字母小写往后排列
print(a)

相当于a列表传入函数中后统一变成一个大小写,然后逐一比较,在按照原来的形式输出出来
列表、元组、字典(Python day10)


reverse = True 表示降序,=False是升序


#reverse = True 表示降序排序
a=[34,545,656,75,32,43,57]
a.sort(reverse=True) # 降序 True
print(a)
a.sort(reverse=False)  #升序  False
print(a)

列表、元组、字典(Python day10)


reverse()翻转
语法:表.reverse()
可以理解成用

print('翻转或者是用了栈')
a=["c","r","n","a","b","e"]
a.reverse()
print(a)

列表、元组、字典(Python day10)


sorted() 可以对列表进行排序操作
语法:表=sorted(a)

a=["c","r","n","a","b","e"]
a=sorted(a)
print(a)#自动排序

列表、元组、字典(Python day10)


sorted 和 reverse 协同使用
语法:sorted(列表名,reverse=bool)
reverse=True降序 False升序

a=a=["c","r","n","a","b","e"]
a=sorted(a,reverse=False)
print(a)

列表、元组、字典(Python day10)

元组

格式:变量名 = (元素1,元素2,…)
注意 元组有一个元素,以 逗号结尾, 起始下标从 0 开始 倒序 从 -1 开始

a_tup = (1,2,3,4,5)
b_tup = ("mn",)

# 访问元组元素 通过下标
print(a_tup[-1])

列表、元组、字典(Python day10)

# for 循环遍历元组
a_tup = (1,2,3,4,5)
for temp in a_tup:
    print(temp,end=" ")

列表、元组、字典(Python day10)


可以存储int 字符串 float bool 列表

m_tup = (1,2,"hello",12.5,True,[1,2,3])
for temp in m_tup:
     print(temp)

列表、元组、字典(Python day10)


元组截取
语法:元组[头下标:尾下标:步长]
含头,不含尾

m_tup = (1,2,"hello",12.5,True,[1,2,3])
print(m_tup[1:4]) # 通过下标截取元组数据 下标包含头,不含尾
print(m_tup[0:5:2]) # 步长为2  (1, 'hello', True)

列表、元组、字典(Python day10)


元组合并与重复

#元组合并
a = (11,22)
b = (33,44)
c = a+b
print(c) #两个元组相加 (11, 22, 33, 44)

# 重复
a = (11,22)
b = a * 4  # 复制四份 生成新元组(11, 22, 11, 22, 11, 22, 11, 22)
print(b)

列表、元组、字典(Python day10)


tuple函数 将一个对象转成元组
元组也可以转化成元组

# tup函数  将一个对象转成元组
	s1 = "python-very-good"
		#s1 = 123456  #TypeError: 'int' object is not iterable
	s1 = tuple(s1)
	print(s1)

# 列表转元组
	s2 = [1,2,3,4,5,6,7]
	s3 = tuple(s2)
	print(s3)

# 将元组 转成 元组
	tup = (1,2,3,4,5,6,)
	new_tup = tuple(tup)
	print(new_tup)

列表、元组、字典(Python day10)


元组中的逗号
元组中的一个逗号,有逗号是元组类型,没有逗号是普通的值的类型

t1=(1,)
t2=(1)
print(type(t1))
print(type(t2))

列表、元组、字典(Python day10)


元组中的方法
index,从左往右返回第一个遇到的指定元素的索引,没有就报错
返回值是下标

y=('A','n','a','c','o','n','d','a',3)
print(y.index('c'))#下标
print(y.index('n'))
print(y.count('n'))#是计数

这是没有报错的情况
列表、元组、字典(Python day10)

这是报错的情况
列表、元组、字典(Python day10)

字典

字典的增删改
字典是Python中唯一内建的数字类型
格式:key:value
键:值

youqu={'name':'于谦','age':18,'hobby':{'抽烟','喝酒','烫头'}}
print(youqu)
print(type(youqu))

列表、元组、字典(Python day10)


字典中的不可修改数据类型
即:不可改(只能增删查)

u={'name':'张三','age':16}
print(u)
v={['1','2']:'heihei'}
print(v)

列表、元组、字典(Python day10)

明天再学删查!

再把今天的深浅拷贝讲一下
若想用copy,必须调用copy的包
列表[]

import copy
a=['1','2']
print(id(a))
print(id(a[0]))
print('以下是浅拷贝')
b=copy.copy(a)
print(id(b))
print(id(b[0]))
print('以下是深拷贝')
c=copy.deepcopy(a)
print(id(c))
print(id(c[0]))

列表、元组、字典(Python day10)

import copy
a=[['1'],['2']]
print('a的列表地址',id(a))
print('a列表第一个元素地址',id(a[0]))
print('以下是浅拷贝')
b=copy.copy(a)
print('b的列表地址',id(b))
print('b列表第一个元素地址',id(b[0]))
print('以下是深拷贝')
c=copy.deepcopy(a)
print('c的列表地址',id(c))
print('c列表第一个元素地址',id(c[0]))

列表、元组、字典(Python day10)

值得注意的是
列表、元组、字典(Python day10)

个人拙见,请见谅!

相关文章: