# Author:larlly
#列表增删改查
#定义列表
name = ["wo","ni","ta","wo"] #定义列表
num_list = list(range(1,10)) #range生成范围的数,强制转化为列表
#切片
print(num_list)
print(name[0])
print(name[0:2]) #顾头不顾尾
print(name[-1])
print(name[:]) #取所有值
print(name[-3:-1]) #必须自左向右
print(name[::-1]) #从后往前,步数为1
#增
name.append("he") #追加到后面
name.insert(0,"she") #插入到指定下标
#改
name[0] = "wo1" #改指定下标的值
#删
del name[0]
name.pop(0) #删除指定下标的值
name.pop() #默认删除末尾的值
name.remove("wo") #在原list中可以直接删除
name.clear() #清空列表数据,如果有嵌套list也直接清空,无需定位到嵌套的list嵌套的list再清空
#列表其他方法:
print(name.index("wo")) #获取指定元素的下标
print(name.count("wo")) #获取指定元素的次数
#返转,自右向左输出
name.reverse()
#进行排序,默认升序,想要降序需加:reverse=True,reverse返转 ,3.x版本,不同数据类型不能放在一起排序了!!!
name.sort()
name.sort(reverse=True)
#extend,合并列表,修改原列表的值,只能合并到原列表的末尾
name2 = ["she1","she2"]
name.extend(name2)
#insert和extend的区别
1.insert可以指定插入元素的位置,extend不能指定,只能合并到末尾
2.insert是在原列表的基础上增加元素,什么都可以加(列表、字符串),只能合并2个列表,不能添加字符串
print(name)
#元祖
1.元祖的值,不能改变,是个不可变的列表,可以通过访问下标和切片的方式查询,但是想要修改必须先转成list
#定义元祖
tuple1 = ("apple","orange","banana","apple")
print(tuple1[0])
print(tuple1)
tuple2 = list(tuple1)
tuple2[0] = "apple1"
print(tuple2)
#元祖只有count和index方法
print(tuple1.count("apple"))
print(tuple1.index("apple"))