列表
list类型(函数)
将对象转化为列表
列表的基本操作:
改变元素:
使用索引可以改变删除元素:
使用del函数 names = ["haha", "heiehi", "wuwu", "eee"] del names[1] print (names)分片赋值
可以随便把值插入到哪个位置正向反向分片赋值是用要赋值的元素取代分片的范围。要注意的是要确定好要位置的多少, 不能多赋也不能少赋
列表方法(设a为一个列表)
apend(), 在列表的后面增加元素, 注意:是直接在原来的列表上面修改, 而不是新建一个。a.append(要加的元素)count(), 用来统计某个元素在列表中出现的次数, a.count(要统计的元素)extend(), 在列表的末尾一次性追加一个序列中的多个值。换句话说, 可以用新列表扩展原有的的列表。 a.extend(b) 含义是:把b列表放到a列表后面
extend()方法与 ‘+’ 区别在于: extend()方法是直接在a列表后面加, 而’+’是要新建一个列表可以使用分片赋值来表示一样的方法, a[len(a):] = b [可读性差]index(), 从列表中找到与之相同的元素, 并返回第一个相同项的索引位置, a.index(x)insert(), 将对象插入到列表中, a.insert(b, x) a表示该列表, b表示索引位置, x表示要插入的元素pop(), 移除列表中的一个元素, 默认是最后一个,[ a.pop() a.pop(1) ], 并返回该值remove(), 移除列表中的一个值, a.remove(x) x表示要移除的元素 ,而且移除的是第一次出现的值。并且无返回值reverse(), 将列表中的元素反向存放。 a.reserve()sort(), 对原列表进行排序(默认升序), 注意:这个函数是没有返回值的,并且是操作员列表。
sort()方法还有两个可选的参数–key和reverse, 如果要使用必须通过名字来指定
要使用key参数必须提供一个在排序过程中使用的函数, 该函数并不是直接用来确定对象大小, 而是为每个元素创建一个键, 然后所有元素根据键来排序(比如你想根据元素长短排序可以a.sort(key = len))reverse参数是一个布尔值(True or False)True表示反向排序, False表示正向排序。(比如a.sort(reverse = True))sorted(), 也是对原列表进行排序, 但是它会返回一个操作之后的列表, 而且对于可迭代的列表都可以操作
备注:如果要创建一个列表副本
x = [1, 2, 3, 4, 5, 6]
y = x[:] #注意:这里不是 y = x
这样就创建好了, y 和 x 中的元素是一样的, 但是并不是x 和 y 都指向同一个字符串, 而是在内存中有两个同样的字符串, x、y各指向一个。 这就是 y = x(内存中实际只有一个字符串, 只是x、y都指向这个字符串) 和 y = x[:]的区别