#python中列表[]中的元素是可以修改的,但是元组()中的数据不能修改
a = [1,2,3,4,5,6,7,8,9,10]
print(a)
#使用[start:end:stride]对列表进行切片,返回新的列表
b = a[:]#完整的复制一份列表a
print(b)

b = a[1:4]#赋值索引为[0-3)的这一段元素
print(b)

b = a[::2]#从起点到终点,步长为2复制列表,得到1,3,5,7....
print(b)

#利用负数的步长,可以很轻松的得到一个反向列表,入下例:
b = a[::-1]#复制的起点是0,步长为-1,所以将会反方向复制

#使用[]访问列表元素
print(a[3])#输出索引为3的元素
print(a[-2])#负数的索引将得到倒数第索引个元素,这里将会输出9,即倒数第二个

#相关的函数
len(a)#返回列表长度
max(a)#返回列表最大值
min(a)#返回列表最小值

'''
列表内置函数
a.append()在原有列表上添加新的对象
a.count()统计某个元素在列表中出现的次数
a.extend()列表末尾一次性追加另一个序列中的多个值（用新列表扩展原来的列表）
a.index()返回第一个匹配对象的索引
a.insert(index, obj)在某个索引前插入元素
a.pop()默认删除列表中最后一个元素
a.pop(index)删除index所在的元素
a.remove(obj)删除第一个匹配值
a.reverse()逆置列表
a.sort()排序,默认升序,加参数reverse = True则为降序排序
'''

a.append(100)
print(a)

a.sort()#排序
print(a)

a.append([300,400])#现在已经不能使用sort函数排序了,因为列表中有了不同的类型
print(a)

#输出1在列表中的次数
print(a.count(1))

#使用pop()
a.pop()
print(a)
a.pop(0)#删除第一个元素
print(a)



