博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python列表 元组 字典 集合
阅读量:4934 次
发布时间:2019-06-11

本文共 3000 字,大约阅读时间需要 10 分钟。

元组

Python中的元组(Tuple)类似于Java中的数组,一旦创建了一个 tuple,就不能以任何方式改变它。这点与Python中的字符串类似,所以我们说元组和字符串都是不可变的序列.元组也支持索引和分片操作.

定义一个元组使用一对小(圆)括号” ( ) “.

  1. #定义一个元组
  2. tuple1 = (1, 2, '3', 4, '5')
  3. # 定义了一个元组之后就无法再添加或修改元组中的元素
  4. print tuple1[0] # 元组的元素都有确定的顺序。元组的索引也是以0为基点的
  5. print tuple1[-1] # 负的索引从元组的尾部开始计数
  6. print tuple1[1:3] # 元组也可以进行切片操作。对元组切片可以得到新的元组。
  7. # 可以使用 in 运算符检查某元素是否存在于元组中。
  8. print 1 in tuple1 # True
  9. #使用for in 进行遍历元组
  10. for item in tuple1:
  11. print item
  12. # 如果需要获取item的序号 可以使用下面的遍历方法:
  13. for index in range(len(tuple1)):
  14. print tuple1[index]
  15. # 还可以使用内置的enumerate函数
  16. for index, item in enumerate(tuple1):
  17. print '%i, %s' % (index, item)

列表

列表是Python中最具灵活性的有序集合对象类型,与字符串不同的是,列表可以包含任何种类的对象:数字,字符串,甚至是其他列表.并且列表都是可变对象,它支持在原处修改的操作.也可以通过指定的索引和分片获取元素.列表就可元组的可变版本.

定义一个列表使用一对中(方)括号” [ ] “.与元组不同的是, 列表有一些内置的函数对列表进行增加,修改和删除等操作.

  1. #定义一个列表
  2. listA = ['a', 'b', 'c', 1, 2]
  3. # 向 list 中增加元素
  4. # 1.使用append 向 list 的末尾追加单个元素。
  5. listA.append(3)
  6. # 2.使用 insert 将单个元素插入到 list 中。数值参数是插入点的索引
  7. listA.insert(3, 'd') # 在下标为3处添加一个元素
  8. # 3.使用 extend 用来连接 list
  9. listA.extend([7, 8])
  10. ### extend 和 append 看起来类似,但实际上完全不同。
  11. ### extend 接受一个参数,这个参数总是一个 list,
  12. ### 并且把这个 list 中的每个元素添加到原 list 中。
  13. ### 另一方面,append 接受一个参数,这个参数可以是任何数据类型,并且简单地追加到 list 的尾部。
  14. # 获取列表的长度
  15. print len(listA) # 9
  16. # 在 list 中搜索
  17. listA.index(3) # index 在 list 中查找一个值的首次出现并返回索引值。
  18. listA.index('100') # 如果在 list 中没有找到值,Python 会引发一个异常。
  19. print 5 in listA # 要测试一个值是否在 list 内,使用 in。如果值存在,它返回 True,否则返为 False 。
  20. # 从 list 中删除元素
  21. listA.remove(3) # remove 从 list 中 仅仅 删除一个值的首次出现。如果在 list 中没有找到值,Python 会引发一个异常
  22. print listA.pop() # pop 它会做两件事:删除 list 的最后一个元素,然后返回删除元素的值。
  23. # 遍历list
  24. for item in listA:
  25. print item

字典

字典(Dictionary) 是 Python 的内置数据类型之一,它定义了键和值之间一对一的关系,但它们是以无序的方式储存的。 Python 中的 dictionary 像 Java 中的 Hashtable 类的实例。

定义 Dictionary 使用一对大(花)括号” { } “

  1. # 定义一个字典
  2. # Dictionary 不只是用于存储字符串。Dictionary 的值可以是任意数据类型,
  3. # 包括字符串、整数、对象,甚至其它的 dictionary。
  4. # 在单个 dictionary 里,dictionary 的值并不需要全都是同一数据类型,可以根据需要混用和匹配。
  5. dict1 = {
    'name' : 'LiuZhichao', 'age' : 24, 'sex' : 'Male'}
  6. dict1['name'] = 'Liuzc' # 为一个已经存在的 dictionary key 赋值,将简单覆盖原有的值。
  7. dict1['Age'] = 25 # 在 Python 中是区分大小写的 age和Age是完全不同的两个key
  8. # 从字典中删除元素
  9. del dict1['sex'] # del 允许您使用 key 从一个 dictionary 中删除独立的元素
  10. dict1.clear() # clear 从一个 dictionary 中清除所有元素

集合

Python的集合(set)和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算.由于集合是无序的,所以,sets 不支持 索引, 分片, 或其它类序列(sequence-like)的操作。

集合也存在不可变形式,frozenset为固定集合.

  1. #定义一个集合
  2. set1 = {
    1, 2, 3, 4, 5}
  3. # 或者使用 set 函数
  4. list1 = [6, 7, 7, 8, 8, 9]
  5. set2 = set(list1)
  6. set2.add(10) # 添加新元素
  7. print set2 # set([8, 9, 6, 7]) 去掉重复内容,而且是无序的
  8. set3 = frozenset(list1)
  9. set3.add(10) # 固定集合不能添加元素
  10. ### 集合有并集,交集,求差操作
  11. ### 并集:intersection() 方法返回一个新集合,包含在两个集合中同时出现的所有元素。
  12. ### 交集:union() 方法返回一个新集合,包含在两个 集合中出现的元素。
  13. ### 差集:difference() 方法返回的新集合中,包含所有在 集合A出现但未在集合B中的元素。
  14. ### symmetric_difference() 方法返回一个新集合,包含所有只在其中一个集合中出现的元素。
  15. # 删除元素
  16. set2.discard(6) # 当元素不存在时,不会引发异常
  17. set2.remove(6) # 与discard的区别在于,如果没有要删除的元素,remove会引发一个异常
  18. set2.pop() # 因为set是无序的,所以pop会随机的从set中删除一个元素

转载于:https://www.cnblogs.com/lucifer24/p/5466452.html

你可能感兴趣的文章
EV: Workaround to Allow Only One Instance or Window of outlook
查看>>
数据校验,
查看>>
IntelliJ IDEA完美解决tomcat8+乱码问题
查看>>
GDI+ ColorMatrix的完全揭秘
查看>>
破解电信光猫华为HG8120C关闭路由功能方法
查看>>
在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?
查看>>
【智能家居篇】wifi网络接入原理(上)——扫描Scanning
查看>>
操作引入xml文件的书包(定位到指定节点)
查看>>
操作系统学习笔记系列(一)- 导论
查看>>
已计划将多个默认网关用于提供单一网络
查看>>
CSS实例:图片导航块
查看>>
python进阶七_文件操作(三)
查看>>
window的对象有哪些(笔记)
查看>>
成绩查询方法指引Pmp
查看>>
Boolean Expressions
查看>>
They Are Everywhere
查看>>
数据结构--汉诺塔递归Java实现
查看>>
day14 多态与抽象
查看>>
Eclipse CDT 出现 launch failed Binary not found
查看>>
apache jmeter
查看>>