list操作
#.列表相关操作:
names = ['小张','小王','小李','小赵']
#.列表元素的取值,根据下标/索引/角标(三者意思一样)
#.计算机下标从0开始
#.列表变量名称:names
#.列表增加元素:names.append 从末尾增加元素
#.列表增加元素:names.insert(下标,增加元素内容),如果下标过大时,就加到末尾位置
#.列表修改变量:通过赋值方法实现
#.列表删除元素:del names(下标)
#.列表删除元素:names.pop(下标) 不传入下标时pop()默认删除最后一个元素,传入元素删除指定下标元素
#.列表删除元素:names.remove(元素名) 删除指定元素
#.列表清空:names.clear()
#.查询元素次数:names.count(元素名)
#.查询元素位置:names.index(元素名)
#.合并列表:1.用extend方法:names=names.extend(names2)
#. 2.+方法:names1 = names1+names2
#.列表反转:names.reverse()
#.列表ASCII码从小到大排序:names.sort()
#.列表ASCII码从大到小排序:names.sort(reverse=True)
#.多维数组读取时依次获取下标值即可,不能通过一维数组的.index方法一次性获取下标,但可以print(num2[3].index('b'))获取
#.list比字符串好管理,查、增、改都方便
print(new_names[0]) #列表以下标方式获取相应位置元素
new_names.append('小刘') #列表增加元素
new_names.insert(0,'小潘') #列表增加下标0位置的元素
new_names.insert(11,'小牛') #当使用insert方法下标越界时默认增加到最后位置
new_names[0]='小郝' #修改变量值
del new_names[0] #删除元素
new_names.pop() #默认删除最后一个元素
new_names.pop(2) #传入下标后删除指定元素
new_names.remove('小刘') #删除指定元素
new_names.clear() #删除列表所有内容
print(new_names.count('小王')) #查询元素出现次数
print(new_names.index('小李')) #查询元素位置,如果列表中有重复元素,就返回第一次出现的下标
new_names.reverse() #反转列表查询
new_names.sort() #安装ascii码排序
#new_names.extend(num) #合并列表,这种合并new_name列表包含num
print(new_names+num) #合并打印列表,这种合并new_name列表不包含num
print(new_names)
print(new_names[-1]) #-1取值最后一个元素
print(new_names.extend(num)) #方法是个动作,并没有返回值,需要打印new_name,
num = [1,2,3,'abc','cde']#一维数组
num1 = [1,2,3,['a','b','c']]#二维数组
num2 = [1,2,3,4,['a','b','c',[5,6,'p']]]
print(num1[3][1]) #多维数组的取值方式:依次取下标即可
print(num2[4][3][2])
print(num2[4][-1][-1])
print(num2[3].index('b'))
'''
#.切片操作:
#.切片操作:list 取值的一种方式
#.切片取值:变量[开始下标:结束下标:步长]
#.切片规则:切片顾头不顾尾,即开始下标位置的值能够取出值,但结束下标位置的值不能读出;
#. 开始下标不写即从头读取;结束下标不写即最后结束;
#. 开始&结束下标均不写即取全部;
#. 步长为-1时即为倒序
num2 = [1,2,3,4,['a','b','c',[5,6,'p']]]
print(num2[1])
print(num2[2])
print(num2[3])
print(num2[1:3])
print(num2[1:4])
print(num2[1:])
print(num2[:])
num2 = [1,2,3,4,5,6,7,8,9,]
print(num2[1:7])
print(num2[1:7:1])
print(num2[1:7:2])
print(num2[::1])
print(num2[::-1])#列表倒序,切片里面步长如果是负数,是从后面往前开始取值
print(num2[::2])
print(num2[1:7])
print(num2[1:7:-1])##切片中这样写不成
print(num2[-1:-7:-1])
print(num2[7:1:-1])######两者不一样
s = 'abcdefg'
print(s[0])
print(s[:6])
print(s[::-1])
print(s[::2])
#s[0]='x'#字符串不能赋值,这种写法错误#####为什么