数组:存储同一种数据类型的集合 scores = [12,23,45] 列表(打了激素的数组):可以存储任意数据类型
列表的创建 >>> list = [1,1.5,True,'redhat'] >>> print(list,type(list)) ([1, 1.5, True, 'redhat'], <type 'list'>)列表中也可以嵌套
>>> list2 = [1,2.5.4.5[1,1.5,True,'redhat']] >>> print(list,type(list2)) ([1, 1.5, True, 'redhat'], <type 'list'>) 列表的特性索引: 正向索引
>>> word = ['a','b','c'] >>> print(word[0]) a反向索引
>>> print(word[-1]) c切片:
>>> print(word[::-1]) ['c', 'b', 'a'] >>> print(word[1:]) ['b', 'c'] >>> print(word[:-1]) ['a', 'b']重复:
>>> print(word * 3) ['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']连接:
>>> word2 = ['d','e'] >>> print(word + word2) ['a', 'b', 'c', 'd', 'e']成员操作符:
>>> print('b' in word) True >>> print('g' in word) False >>> print('b' not in word) False 列表元素增加append():追加一个元素到列表
>>> word = ['a','b','c'] >>> word.append('d') >>> print(word) ['a', 'b', 'c', 'd']extend():拉伸 追加多个元素到列表中
>>> word.extend(['e','f']) >>> print(word) ['a', 'b', 'c', 'd', 'e', 'f']insert() 在指定索引处插入元素
word.insert(1,'b') >>> print(word) ['a', 'b', 'b', 'c', 'd', 'e', 'f'] 列表元素删除pop
>>> word = ['a','b','c'] >>> word.pop() 'c' >>> word ['a', 'b'] >>> word.pop() 'b' >>> word ['a'] >>> word.pop(0) 'a' >>> word [] >>> word.pop() Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: pop from empty list >>>remove:删除列表元素
>>> word = ['a','b','c'] >>> a = word.remove('c') >>> print(a) None >>> print(word) ['a', 'b']从内存中删除一个数据:
>>> word = ['a','b','c'] >>> del word[1] >>> print(word) ['a', 'c'] 列表元素查看查看元素在列表中出现的次数(count):
>>> word = ['a','b','b','c','d','e','d','e'] >>> print(word.count('a')) 1 >>> print(word.count('b')) 2查看指定元素的索引值(可以指定索引范围inde):
>>> print(word.index('d')) 4 >>> print(word.index('d',4,7)) 4 >>> print(word.index('d',3,7)) 4 列表的元素的修改通过索引值,重新赋值:
>>> word = ['a','b','c'] >>> word[0] = 'a1' >>> print(word) ['a1', 'b', 'c']通过切片赋值:
>>> word[:1]= ['b1','c1'] >>> print(word) ['b1', 'c1', 'b', 'c'] 列表元素的排序sort 默认是按照Ascii码进行排序的
>>> service = ['http','ftp','ftp','ssh'] >>> service.sort(reverse=True) >>> print(service) ['ssh', 'http', 'ftp', 'ftp'] >>> names = ['Tom','alice','bob','Borry'] >>> names.sort(key=str.upper) >>> print(names) ['alice', 'bob', 'Borry', 'Tom']随机数排列:
>>> import random >>> ha = list(range(20)) >>> print(ha) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] >>> random.shuffle(ha) >>> print(ha) [3, 14, 17, 11, 5, 16, 0, 18, 7, 10, 12, 8, 4, 2, 15, 19, 13, 9, 6, 1] 列表的示例1.假定有下面这样的列表: names = [‘fentiao’, ‘fendai’, ‘fensi’, ‘apple’] 输出结果为:‘I have fentiao, fendai, fensi and apple.’
names = ['fentiao', 'fendai', 'fensi', 'apple'] print('I have ' + ','.join(names[:-1]) + ' and ' + names[-1])2.输入某年某月某日(yyyy-MM-dd),判断这一天是这一年的第几天?
cal = input('请输入日期 yyyy-MM-dd:') date = cal.split('-') #拆分日期 year = int(date[0]) month = int(date[1]) day = int(date[2]) arr = [0,31,28,31,30,31,30,31,31,30,31,30,31] num = 0 if ((year % 4 ==0) and (year % 100 !=0) or (year % 400== 0)): arr[2] = 29 for i in range(1,len(arr)): if month > i: num += arr[i] else: num += day break print('天数:',num) 列表的综合练习输入三个整数x,y,z,请把这三个数由小到大输出
haha = input('请输入三个整数 X,Y,Z ') haha1 = haha.split(',') a = int(haha1[0]) b = int(haha1[1]) c = int(haha1[-1]) list = [a,b,c] list.sort() print(list)END