链条传动

砥砺前行,不忘初心!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

列表的常用方法

#!/usr/bin/env python
# -*- coding: utf-8 -*-


li = ['hello','jim','haha',3,5,6,8,'a']

print(len(li))  #列表的长度
#列表下标是从0开始的
print(li[0])   #取列表第一个元素
print(li[-1])  #取列表最后一个元素,倒数第二个元素就为:li[-2]

#列表切片---li[a:b:c]   从列表中取下标从a到b(不包括b),间隔为c
print(li[0:3])   #从列表中取下标0-2(不包括3)的元素---简单说就是取前2个元素
print(li[:3])   #和上面等价,
print(li[-3:-1])  #取倒数第3个到倒数第2个(不包括倒数第1个)
print(li[-3:])    #取倒数第3个到倒数第1个

li.insert(2,'new_insert')  #在列表下标为2的位置插入新的元素(new_insert)
print(li)


li.append('last_insert')   #在列表最后插入(追加)新的元素(last_insert)
print(li)

li.remove('haha')   #删除列表中为'haha'的元素。---指定元素进行删除
print(li)

li.pop(3)   #删除下标为3的元素。-----根据下标删除元素(li.pop():默认删除最后一个)

del li[1]   #del是python全局命令,可以删除任何东西,包括变量,如想要删除li这个变量,则:del li
print(li)

print(li[::3])   #每隔2个元素取一个值(即每3个元素取一个)

print(li.count('hello'))   #统计列表中'hello'的个数
print(li.index(3))   #查找元素'haha'的下标(存在多个元素只返回第一个值的下标)


li = ['hello','jim','haha',3,5,6,8,3,'hello','a']
li2 = ['new_li1','new_li2']

li.extend(li2)   #将li2合并到li中
print(li)
print(li2)

li.reverse()    #反转列表
print(li)

#li.sort()    #对列表进行排序。---注:在python3中,列表中同时包含数字和字符串时不能进行排序,否则会报错
#print(li)

li3 = li.copy()    #复制列表li,并赋值给li3
print(li)
print(li3)
#使用copy()之后,li和li3就是两个互不相干的列表
# 上述说明仅适用于列表中没有子列表的情况,当A列表中嵌套B列表中时,B列表在A列表中存放的只是一个标识符(指向B列表的内存地址),
# B列表真正的数据是一块独立的内存,和A列表并不在同一块内存中,因此A列表被复制为C列表后,C列表存放的也是B的标识符,
# 因此A列表和C列表是共享同B列表的
#python中的copy模块copy.copy()原理同上,要想连同子列表一同复制,就需要深copy:copy.deepcopy()
li[0] = 'UPDATE'
print(li)
print(li3)

 

posted on 2016-10-29 16:20  链条君  阅读(226)  评论(0编辑  收藏  举报