list
列表是Python内置的一种数据类型:list是一种有序的集合,可以随时添加和删除其中的元素。
注意:如果列表保存的数据是整数集,需要用range(i,j)函数赋值,保存的数据类型才会使整数
否则默认是字符串类型
1、创建一个列表(默认字符串类型)
##空列表的创建 a=list() a=[] ##赋值 a = [1,2,3,'James','Paul']##不同的数据类型可以放在一个列表里面 a = [i for i in range(10)]
创建一个数字列表
#创建数字列表 a=list() for i in range(1,10): a.append(i); print(a) #或者 b=list(range(1,10)) print(b)
创建一个二维列表
#方法一 a = [[0 for x in range(5)] for y in range(5)] #创建一个值为0的二维列表 #方法二 for x in range(5): a.append([]) for y in range(5): a[x].append(0) #以上两种方法默认数据类型是 int 型
'''题意:输入一个n,输出一个(n*2+1)的矩阵,并且这个矩阵的形状是一个 '木' 字''' while True: n=input() if n=='0':#如果用n==0判断会结束不了 break else: n=int(n) n=n*2+1 t=n/2 #这里的t是float型 t=int(t) a=list() for i in range(n): a.append([]) for j in range(n): a[i].append('.') for i in range(n): a[i][t]='*' a[t][i]='*' for i in range(n): for j in range(n): if (i==j) and (i>=t):#主对角线上 a[i][j]='*' if (i+j==n-1) and (i>=t):#副对角线上 a[i][j]='*' for i in range(n): for j in range(n): print(a[i][j],end='') print(' ',end='')
2、添加元素:list.append() :##尾部新增元素
list = [1,2,3] list.append(5) ##输出list [1, 2, 3, 5] list.insert():##插入元素 list.insert(index, object) 参数一:index 位置, 参数二:object list = [1,2,3,5] list.insert(3,4) ##输出list [1, 2, 3, 4, 5] list.extend():##扩展列表 list.extend(tablelist),左右与 + 类似 list1 = [1,2,3] ist2 = ['a','b'] ist1.extend(list2) ##输出list1 [1, 2, 3, 'a', 'b'] ##+ 号用于组合列表, list1+list2 L1 = [1,2,3] L2 = ['a', 'b'] ##输出L1+L2 [1, 2, 3, 'a', 'b'] ##* 号用于重复列表 L1 = [1,2,3] L1*3 ##输出L1 [1, 2, 3, 1, 2, 3, 1, 2, 3]
3、访问列表元素
a = ['a',5,'z'] a[2]='z' ##元素重新赋值:= a[2] = 'LL' ##输出a ['a',5,‘LL’]
4、顺序遍历,迭代:
##for循环 list = [1,2,3,4,5] for i in list: print(i) ##使用for循环和enumerate()函数实现,同时输出索引值和元素内容: list = ['中国', '美国', '英国', '俄罗斯'] for index, item in enumerate(list): print(index+1, item) ##输出''' 1 中国 2 美国 3 英国 4 俄罗斯 '''
5、删除元素:
list.remove(object):##参数object 如有重复元素,只会删除最靠前的 list = [1,2,'a','b','a'] list.remove('a') ##输出list [1, 2, 'b', 'a'] ## 第一个‘a’被删除,后面的未被移除 list.pop(index): ##默认为删除最后一个元素,index -- 可选参数,要移除列表元素的对应索引值, list = [1,2,3,4,5] list.pop() ## 默认删除最后一个元素 5 ##输出list [1, 2, 3, 4] list.pop(1) # 删除指定索引(index=1)的元素 ##输出list [1, 3, 4] del list[index] :##可以删除整个列表或指定元素或者列表切片,list删除后无法访问。 list [1, 3, 4] del list[1] ##输出list [1, 4] del list ##list <class 'list'>
6、排序和反转:
list.reverse() : ##列表元素反转 list是列表的名字 list.sort():排序,sort有三个默认参数 cmp=None,key=None,reverse=False 因此可以制定排序参数 list.sort(reverse=False) ##默认升序排序 list.sort(reverse=True) ##降序排序
7、去重
a=[5,4,2,1,23,2,2,3]
b=list(set(a))