成长值: 15816 TA的每日心情 | 开心 2018-9-25 20:47 |
---|
新手上路
- 积分
- 457
|
本帖最后由 爱卫生 于 2017-12-12 22:35 编辑
1 列表的定义(列表的源代码文件是builtin.py,可以查看源代码是如何定义的,加深理解)
列表是一种python数据类型,用中括号[]表示。可以为空值。
代码:- names=["zhangsan","lisi","wangwu","zhaoliu"]
- print(names)
- print(names[1],names[3]) # 从0开始编号。取1和3号的值
- print(names[1:3]) #这个动作叫切片。从编号1开始取,取3个,但不包括最后1个,即不取尾。所以取到2个值。
- print(names[-1]) #取最后一个值,用-1表示位置
- print(names[-2]) #取倒数第二个值。
- print(names[-3:-1])#取最后2个值。注意不包括最后一个。因为有不顾尾原则。
- print(names[-3:])#取最后3个值。
复制代码 结果:- ['zhangsan', 'lisi', 'wangwu', 'zhaoliu']
- lisi zhaoliu
- ['lisi', 'wangwu']
- zhaoliu
- wangwu
- ['lisi', 'wangwu']
- ['lisi', 'wangwu', 'zhaoliu']
复制代码 2 列表的追加
names.append("alice") #插到末尾names.insert(2,"bob") #从位置2开始插入,插入bob
执行结果为:['zhangsan', 'lisi', 'bob', 'wangwu', 'zhaoliu', 'alice']
3 列表的替换
names[2] = "clark" # 直接把位置2的值替换为clark。
4 列表的删除(3种方法)
names.remove("alice") #删除列表中alice。需要注意,程序是从左往右搜索,找到一个alice后就删除,不会再执行。后面还有alice也不会删除了。
del names[1] #删除列表中位置为1的值。
names.pop() #删除列表中位置最后的那个值。
names.pop(2) #删除列表中位置2的那个值。
5 列表的索引查找
names.index("alice") #返回alice在列表中的位置
6 列表中重复数值的统计
names.count("alice") #统计列表中一共有几个alice
7 列表的重置
names.clear() #将列表重置为一个空列表[]
8 列表的顺序颠倒
names.reverse() #将列表中元素反向,如[1,2,3]改为[3,2,1]
9 列表的排序
names.sort() #默认规则是按照首字母大小写排序- names=["1zhangsan","2lisi","#wangwu","zhaoliu","alice"]
- names.sort()
- print(names)
复制代码 结果:
['#wangwu', '1zhangsan', '2lisi', 'alice', 'zhaoliu']
可以看出,特殊字符>数字>大写字母>小写字母。这个排序规则是ASCII码默认的排序规则。
10 列表的扩展(合并)
names.extend举例:- names=["aaa","bbb","ccc","ddd","eee"]
- names1=["fff","ggg","hhh","iii"]
- names.extend(names1)
- print(names)
- del names1
- print(names)
复制代码 结果:- ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff', 'ggg', 'hhh', 'iii']
- ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff', 'ggg', 'hhh', 'iii']
复制代码 可以看到,合并以后,即使删掉names1,也对已经合并的结果没有任何影响。
|
|