name =['zmz','zbb','zmh']print(name)print(name[0:3:]) # []里面可以是切片类型
print(name[2]) # zmh
print(name[0:2]) # ['zmz','zbb']
a =1
b =2
c =3
d =4
e =5
f =6
list1 =[a, b, c, d, e, f]print(list1)print(list1[0:3])
str1 =['zbb','zmz','zmz','zmh']
# 1.in -- bool型,****公共操作
print('zbb' in str1)print('zbbr' in str1)
# 2.not in -- bool型,****公共操作
print('zbb' not in str1)print('zbbr' not in str1)'''
用户名输入体验案例
'''
name =['a','b','c','d','e']
i =1while i >0:
new_name =input('please input: ')if new_name in name:print("'%s' is invalid name"% new_name)else:print(f"your name is '{new_name}'")break
name =['zmz','zbb','lss','drj']print(name)
i =0while i <len(name):print(name[i])
i +=1print('................')for i in name:print(i)
八、列表嵌套
name =[['zmz','zbb','lsy'],[1,2,3],['zzc','zmz','zmh']]print(name[0])print(name[0][2])'''
办公室分配
步骤 :
1.准备数据
1.18位老师 -- 采用列表存储
1.23个办公室 -- 嵌套列表
2.分配老师到办公室
**** 随机分配
方法:把老师对应的名字写入列表 -- 列表追加函数
3.验证是否分配成功
打印出办公室列表的数据
'''
# 准备数据
import random
teachers =['a','b','c','d','e','f','g','h']
offices =[[],[],[]]
# 分配数据
for name in teachers:
num = random.randint(0,2)
offices[num].append(name)print(offices)
# 打印验证
i =1for office in offices:print(f'办公室{i}的人数为{len(office)},分别是:')for name in office:print(name, end='\t')print()
i +=1
九、列表sort()和sorted
# 以对列表进行排序为例:
n =[1,3,2,0]
nn =sorted(n)print(nn)
m =['b','a','d','c']
mm = m.sort()print(mm)
# 如上,我们分别对列表n使用sorted()方法排序,对列表m使用sort()方法排序。
"""
如上图展示,我们可以得出:
1、sorted方法会在内存中创建一个新的列表对象并在其中对列表元素进行排序。
2、sort方法直接在原始列表上进行排序。
3、sorted方法有返回值,sort方法无返回值。
用法总结:
1、你需要保留原始对象的时候选择:sorted
2、需要节省内存的时候选择:sort
3、需要有返回值的时候用:sorted
"""