python中有三种序列结构:字符串、元组、列表。元组和列表中并不要求所含元素的种类相同。元组是不可变的,列表是可以改变的。下面主要讲讲列表。
列表的创建:
>>> weekdays = [‘monday‘,‘tuesday‘,‘wednesday‘] >>> empty_list = [] >>> another_empty_list = list() %使用list创建一个空列表
list()函数不单单可以建立一个空列表,还可以将一个其他数据类型转换为列表
>>> list(‘cat‘) %把字符串变成列表 [‘c‘, ‘a‘, ‘t‘] >>> birthday = ‘1/6/1952‘ >>> birthday.split(‘/‘) %split()可以依据分隔符将字符串变成列表 [‘1‘, ‘6‘, ‘1952‘] >>> a_tuple = (‘z‘, ‘z‘ ,‘d‘) >>> list(a_tuple) %将元组转换成列表 [‘z‘, ‘z‘, ‘d‘]
列表和字符串一样可以用[ ]里偏移量获取对应位置的元素,也可以指定范围并使用切片提取元素,这里不再赘述。前面已经提过列表和字符串、元组不一样,可以改变,所以我们可以用 []来直接来改变列表中的元素。
下面来介绍一些关于列表的函数:
使用append()添加元素至尾部。
使用extend()或者+=合并列表
>>> num_1 = [‘1‘,‘2‘,‘3‘] >>> num_2 = [‘4‘,‘5‘,‘6‘] >>> num_1.extend(num_2) >>> num_1 [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘]
使用insert()在指定位置插入元素
>>> num_1.insert(1,‘hello‘) >>> num_1 [‘1‘, ‘hello‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘]
使用del删除指定位置的元素
>>> del num_1[1] >>> num_1 [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘]
使用remove()删除具有指定值的元素
>>> num_1.remove(‘4‘) >>> num_1 [‘1‘, ‘2‘, ‘3‘, ‘5‘, ‘6‘]
使用pop()获取并删除指定位置的元素
>>> num_1.pop(2) ‘3‘ >>> num_1 [‘1‘, ‘2‘, ‘5‘, ‘6‘]
使用index()查询具有特定值的元素
>>> num_1.index(‘5‘) 2
使用in判断值是否存在
>>> ‘2‘ in num_1 True >>> ‘3‘ in num_1 False
使用count()记录特定值出现的次数
>>> num_1.count(‘1‘) 1 >>> num_1.count(‘3‘) 0
使用join()转换为字符串
>>> ‘,‘.join(num_1) ‘1,2,5,6‘
>>> friends = [‘Harry‘, ‘Hermione‘, ‘Ron‘]
>>> separator = ‘ * ‘
>>> joined = separator.join(friends)
>>> joined
‘Harry * Hermione * Ron‘
>>> separated = joined.split(separator)
>>> separated
[‘Harry‘, ‘Hermione‘, ‘Ron‘]
>>> separated == friends
True
使用sort()重新排列元素
%列表方法sort()会对原列表进行排序,改变原列表内容 %通用函数 sorted() 则会返回排好序的列表副本,原列表内容不变。 >>> marxes = [‘Groucho‘, ‘Chico‘, ‘Harpo‘] >>> sorted_marxes = sorted(marxes) >>> sorted_marxes [‘Chico‘, ‘Groucho‘, ‘Harpo‘] >>> marxes.sort() >>> marxes [‘Chico‘, ‘Groucho‘, ‘Harpo‘] %默认的排序是升序的,通过添加参数 reverse=True 可以改变为降序排列: >>> numbers = [2, 1, 4.0, 3] >>> numbers.sort(reverse=True) >>> numbers [4.0, 3, 2, 1]
使用len()获取长度
使用‘=’赋值,使用copy()复制
%使用‘=’,其实会使它们指向同一个变量,自己的变化都将影响对方 >>> a = [1, 2, 3] >>> a [1, 2, 3] >>> b = a >>> b [1, 2, 3] >>> a[0] = ‘surprise‘ >>> a [‘surprise‘, 2, 3] >>> b [‘surprise‘, 2, 3] %如果不想这样相互影响,我们应该创建副本,使用copy(),list()或者列表分片 >>> a = [1, 2, 3] >>> b = a.copy() >>> c = list(a) >>> d = a[:]
原文:https://www.cnblogs.com/1212dd/p/13734203.html