python列表
创建一个字符列表,执行命令
L1 = ['a','b','c','d','e','f']
print(L1[0])
print(L1[2])
print(L1[5])
打印结果为a,c,f
如果访问超出范围,python则会抛出一个异常IndexError
插入,追加,删除列表数据也很简单,执行命令
# coding: utf-8
__author__ = 'www.py3study.com'
L1 = ['a','b','c','d','e','f']
L1.insert(0,0)
print(L1)
L1.insert(-1,100)
print(L1)
L1.append('python')
print(L1)
L1.pop(3)
print(L1)
L1.pop()
print(L1)
执行结果如下:
"C:Program Files (x86)python3.6python.exe" D:/python3_study/list1.py
[0, 'a', 'b', 'c', 'd', 'e', 'f']
[0, 'a', 'b', 'c', 'd', 'e', 100, 'f']
[0, 'a', 'b', 'c', 'd', 'e', 100, 'f', 'python']
[0, 'a', 'b', 'd', 'e', 100, 'f', 'python']
[0, 'a', 'b', 'd', 'e', 100, 'f']
对列表最常用的操作是列表分片,分片可以简单的理解为将一个列表分成几块,它的操作方法是list[index1:index2[:step]],先创建一个较长的数字列表做这个分片示例,执行命令
L2 = []
for i in range(0,101):
L2.append(i)
print(L2)
创建0-100,共101个数字的列表,如下图
列表切片其实和访问列表元素很相似,例如,要访问列表L2的第10个元素,那么就应该是L2[10]就可以了,如果要访问列表L2的第10到20个元素呢?很简单,L2[10:21]就可以了,至于list[index1:index2[:step]]中step是步长,实验一下就知道了,执行命令
L2[0:21]
L2[21:41]
L2[81:100]
L2[0:21:1]
L2[0:21:3]
L2[0:21:4]
L2[0:21:5]
效果如下
写个简单程序showlist.py验证一下
# coding: utf-8
__author__ = 'www.py3study.com'
class showlist(object):
def __init__(self):
self.L1 = []
self.L2 = []
self.createlist() #创建列表
self.insertdata() #插入数据
self.appenddata() #追加数据
self.deletedata() #删除数据
self.sublist() #列表分片
def createlist(self):
print('创建列表:')
print('L1 = list("abcdefg")')
self.L1 = list('abcdefg')
print('L2 = []')
print('for i in range(0,10):')
print('tL2.append(i)')
for i in range(0,10):
self.L2.append(i)
print('L1 = ')
print(self.L1)
print('L2 = ')
print(self.L2)
print('\n')
def insertdata(self):
print(u"插入数据")
print(u"L1列表中第3个位置插入数字100,执行命令:L1.appned(3,100)")
self.L1.insert(3,100)
print('L1 =')
print(self.L1)
print(u"L2列表中第10个位置插入字符串'python',执行命令L2.insert(10,'python')")
self.L2.insert(10,'python')
print('L2 =')
print(self.L2)
print('\n')
def appenddata(self):
print(u'追加数据')
print(u"L1列表尾追加一个列表[1,2,3],执行命令L1.append([1,2,3])")
self.L1.append([1,2,3])
print('L1 =')
print(self.L1)
print(u"L2列表尾追加一个元组('a','b','c'),执行命令L2.append(('a','b','c'))")
self.L2.append(('a','b','c'))
print('L2 =')
print(self.L2)
print('\n')
def deletedata(self):
print(u'删除数据')
print(u"删除L1的最后一个元素,执行命令L1.pop()")
self.L1.pop()
print('L1 = ')
print(self.L1)
print(u"删除L1的第一个元素,执行命令L1.pop(0)")
self.L1.pop(0)
print('L1 =')
print(self.L1)
print(u"删除L2的第四个元素,执行命令L2.pop(3)")
self.L2.pop(3)
print('L2 =')
print(self.L2)
print('\n')
def sublist(self):
print(u"列表分片")
print(u"取列表L1的第三到最后一个元素组成的新列表,执行命令L1[2:]")
print('L1 '+ '=',self.L1)
print(self.L1[2:])
print(u"取列表L2的第二个到倒数第二个元素组成的新列表,执行命令L2[1:-2]")
print('L2 '+ '=',self.L2)
print(self.L2[1:-2])
print('\n')
if __name__ == '__main__':
sl = showlist()
运行结果如下:
"C:Program Files (x86)python3.6python.exe" D:/python3_study/showlist.py
创建列表:
L1 = list("abcdefg")
L2 = []
for i in range(0,10):
L2.append(i)
L1 =
['a', 'b', 'c', 'd', 'e', 'f', 'g']
L2 =
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
插入数据
L1列表中第3个位置插入数字100,执行命令:L1.appned(3,100)
L1 =
['a', 'b', 'c', 100, 'd', 'e', 'f', 'g']
L2列表中第10个位置插入字符串'python',执行命令L2.insert(10,'python')
L2 =
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'python']
追加数据
L1列表尾追加一个列表[1,2,3],执行命令L1.append([1,2,3])
L1 =
['a', 'b', 'c', 100, 'd', 'e', 'f', 'g', [1, 2, 3]]
L2列表尾追加一个元组('a','b','c'),执行命令L2.append(('a','b','c'))
L2 =
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'python', ('a', 'b', 'c')]
删除数据
删除L1的最后一个元素,执行命令L1.pop()
L1 =
['a', 'b', 'c', 100, 'd', 'e', 'f', 'g']
删除L1的第一个元素,执行命令L1.pop(0)
L1 =
['b', 'c', 100, 'd', 'e', 'f', 'g']
删除L2的第四个元素,执行命令L2.pop(3)
L2 =
[0, 1, 2, 4, 5, 6, 7, 8, 9, 'python', ('a', 'b', 'c')]
列表分片
取列表L1的第三到最后一个元素组成的新列表,执行命令L1[2:]
L1 = ['b', 'c', 100, 'd', 'e', 'f', 'g']
[100, 'd', 'e', 'f', 'g']
取列表L2的第二个到倒数第二个元素组成的新列表,执行命令L2[1:-2]
L2 = [0, 1, 2, 4, 5, 6, 7, 8, 9, 'python', ('a', 'b', 'c')]
[1, 2, 4, 5, 6, 7, 8, 9]
列表还有很多其它的函数和操作方法,有兴趣可参考官方文档和Google,列表和元组非常相似,掌握了列表就基本掌握了元组,列表是python编程中必不可少的一部分
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341