Python基础——列表和元组
2016-07-31 20:37
316 查看
列表的定义
Python中使用[]来包含列表成员。空列表直接使用[]来表示。
列表中的成员的类型可以不同。
列表中还可以包含列表。
if __name__ == "__main__": emptyList = [] # Empty list. aList = ["John", 18] # Ordinary list. listInList = [aList, 1] # List with list in. print emptyList # [] print aList # ['John', 18] print listInList # [['John', 18], 1]
列表索引
Python中的列表的索引有很多的方式,下面是一些例子:if __name__ == "__main__": aList = [1, 2, 3, 4, 5, 6] print aList[0] # 1, Positive index, from left to right, start from 0. print aList[-1] # 6, Negative index, from right to left, start form -1. print aList[0:4] # [1, 2, 3, 4], index [0, 4), index 4 not contained. print aList[-3:-1] # [4, 5], index [-3, -1), index -1 not contained. print aList[0:-1] # [1, 2, 3, 4, 5], index -1 not contained. print aList[:] # [1, 2, 3, 4, 5, 6], print all. print aList[:2] # [1, 2], index [0, 2). print aList[-2:] # [5, 6], index [-2, -2). print aList[-3:0] # [], wrong order!! print aList[0:6:2] # [1, 3, 5], the third one is step. print aList[-3:0:-1]# [4, 3, 2], the third one is step, could be negative.Python中的索引可以从左开始也可以从右开始。
可以分片,但是分片需要注意的是第一个索引必须是表示从左边开始的,第二个索引必须是从右边开始的,这也是为什么aList[-3:0]返回的结果是空。
列表操作
Python中的列表可以相加,甚至可以相乘:if __name__ == "__main__": aList = [1, 2, 3] bList = [4, 5, 6] print aList + bList # [1, 2, 3, 4, 5, 6] print aList * 3 # [1, 2, 3, 1, 2, 3, 1, 2, 3]
in操作符可以用在List的if和for语句中:
if __name__ == "__main__": aList = [-1, 0, 1, 2, 3] for e in aList: print e if 0 in aList: print "yes"
del可以用在列表中用于删除元素:
if __name__ == "__main__": aList = [-1, 0, 1, 2, 3] del aList[0] # del -1. del aList[0] # del 0. print aList # [1, 2, 3].
列表中的长度,最大值,最小值都有函数来判断:
if __name__ == "__main__": aList = [1, 2, 3, 4] print len(aList) # 4 print max(aList) # 4 print min(aList) # 1
Python中提供了工厂方法list()来构建列表:
if __name__ == "__main__": aStr = "hello world" print list(aStr) # ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
列表的方法
下面是列表的方法举例:#coding=utf-8
#
# This file talks about list and tuple in Python.
#
if __name__ == "__main__":
aList = [1, 2, 3, 4]
aList.append(5) # 添加元素.
print aList # [1, 2, 3, 4, 5].
aList.append([5, 6]) # 添加元素,“一个”元素.
print aList # [1, 2, 3, 4, 5, [5, 6]].
aList.extend([5, 6]) # 一次性追加序列中的多个元素, 不同于列表相加,这里直接改变了列表本身,而相加不会改变列表本身.
print aList # [1, 2, 3, 4, 5, [5, 6], 5, 6].
print aList.count(5) # 1 # 统计一个元素出现的次数,不会递归统计,所以结果是2,而不是3.
print aList.index(5) # 4 # 找到第一个匹配项的下标.
aList.insert(2, "two") # 指定位置插入元素.
print aList # [1, 2, 'two', 3, 4, 5, [5, 6], 5, 6].
print aList.pop() # 6 # 删除最后一个元素,并返回它.
print aList.pop(0) # 1 # 删除第一个元素,并返回它.
print aList # [2, 'two', 3, 4, 5, [5, 6], 5] # 通过pop()防范,元素已删除.
aList.remove(5) # 删除第一个匹配的元素.
print aList # [2, 'two', 3, 4, [5, 6], 5].
aList.reverse() # 列表反向存放.
print aList # [5, [5, 6], 4, 3, 'two', 2].
aList.sort() # 原地排序,所以会改变列表本身.
print aList # [2, 3, 4, 5, [5, 6], 'two'].
元祖的定义
元组跟列表类似。Python中使用()来包含成员。
空的元组就是一对()。
元组中必须多于一个成员。
下面是一些例子:
if __name__ == "__main__": emptyTuple = () # Empty tuple. print emptyTuple # () aTuple = (1, 2) # Ordinary tuple. print aTuple # (1, 2) singleTuple = (1) # This is not a tuple. print type(singleTuple) # <type 'int'>. print singleTuple # 1 singleTuple_modify = (1,) # This is a tumple. print singleTuple_modify # (1,).
Python提供了tuple构造函数:
if __name__ == "__main__": print tuple([1, 2, 3]) # (1, 2, 3), list to tuple. print tuple("hello") # ('h', 'e', 'l', 'l', 'o'), string to tuple. print tuple((1, 2, 3)) # (1, 2, 3), tuple to tuple.
元组的访问同列表,其他操作基本没有,因为它不可变
元组可以当作映射中的“键”来使用。元组常用作函数或者方法的返回值(如果这个函数或者方法需要返回多个值的话)。
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例
- Python 七步捉虫法