Python笔记——基本数据结构:列表、元组及字典
转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx
Python基本数据结构:列表,元组及字典
一、列表
一组有序项目的集合。可变的数据类型【可进行增删改查】
列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔。
列表中可以包含任何数据类型,也可包含另一个列表
列表可通过序号访问其中成员
常用列表操作:
list.append()追加成员,成员数据
list.pop()删除成员,删除第i个成员
list.count(x)计算列表中参数x出现的次数
list.remove()删除列表中的成员,直接删除成员i
list.extend(L)向列表中追加另一个列表L
list.reverse()将列表中成员的顺序颠倒
list.index(x)获得参数x在列表中的位置
list.sort()将列表中的成员排序
list.insert()向列表中插入数据insert(a,b)向列表中插入数据
可通过
>>>help(list) 查看方法详情
- print("-------list operations------")
- #列表操作
- l = [1,2,3,4,5]
- l2 = [7,8,9]
- print(l)
- #获得列表长度
- length = len(l)
- print(length)
- #追加一个元素,在列表最后一位
- l.append(6)
- print(l)
- #向列表中追加另一个列表
- l.extend(l2)
- print(l)
- #插入一个元素,在位置a
- l.insert(0,0)
- print(l)
- #将列表顺序颠倒
- l.reverse()
- print(l)
- #排序,从小到大
- l.sort()
- print(l)
- #统计某个元素出现的次数
- c = l.count(0)
- print(c)
- #查找某个参数在列表中的位置,未命中则抛异常
- i = l.index(1)
- print(i)
- #删除某个位置的成员
- l.pop(0)
- print(l)
- l.append(1)
- #直接删除某个值的成员,若有多个,删除第一个
- l.remove(1)
- print(l)
结果:

列表补充:2011-4-17
- #列表操作补充--切片操作
- example = [0,1,2,3,4,5,6,7,8,9]
- #打印某一区间 左闭右开
- print(example[4:8])
- #想包含最后一个
- print(example[4:])
- #包含首个
- print(example[:8])
- #所有的
- print(example[:])
- #第三个参数为步长
- print(example[1:8:2])
- #倒序输出
- print(example[::-1])
- #列表合并
- a = [1,2,3]
- b = [4,5,6]
- print(a+b)
- #替换
- ex = [1,2,3,4,5,6]
- ex[4:]=[9,8,7]
- print(ex)#将56换为987
- #插入
- ex[1:1] = [0,0,0]
- print(ex)
- #删除
- del ex[0:2]
- print(ex)
- #或者
- ex[6:]=[]
- print(ex)
- #比较
- one = [1,2,3]
- two = [1,2,3]
- print(one == two)#true
- print(one is two)#false
- #列表操作补充——字符串也是列表
- str = "abcdefg"
- print(str[0])
- #将一个字符串转为字符数组
- print(list(str))
- #字符串
- s = "abcdefg"
- #判断是否包含
- print('a' in s)
- #函数和模块
- import math
- #将一个变量指向一个函数
- se = math.sqrt
- print(se(81))
结果:

二、元组
不可变序列
元组是以圆括号“()”包围的数据集合,不同成员以“,”分隔
与列表不同:元组中数据一旦确立就不能改变
通过下标进行访问
声明:
L=(1,2,3)
含0个元素的元组: L = ()
含1个元素的元组:L=(1,) 注意有逗号
- #元组操作
- #声明
- o =('a','b','c',('d1','d2'))
- o1 = ()
- o2 = (1,)
- #访问
- print(o[0])
- print(o[3][0])
- #用于打印语句
- age = 22
- name = 'tom'
- print("%s is %d years old"%(name,age))

三、字典
键值对的集合(map)
字典是以大括号“{}”包围的数据集合
与列表区别:字典是无序的,在字典中通过键来访问成员。
字典是可变的,可以包含任何其他类型
声明:
M={k1:v1,k2:v2}
访问 M[k1]将得到v1
常用字典操作:
dic.clear()清空字典
dic.keys()获得键的列表
dic.values()获得值的列表
dic.copy()复制字典
dic.pop(k)删除键k
dic.get(k)获得键k的值
dic.update()更新成员,若成员不存在,相当于加入
dic.items()获得由键和值组成的列表
dic.popitem
可以通过
>>>help(dict) 查看详情
- #字典操作
- m = {'a':1,'b':2,'c':3}
- print(m)
- #读取某一个_通过key
- print(m['a'])
- #读取某一个,通过get方法
- print(m.get('b'))
- #复制字典
- m2 = m.copy()
- print(m2)
- #获取所有键的列表
- print( m.keys() )
- #获取所有值的列表
- print( m.values() )
- #获取所有键值对元组组成的列表
- print( m.items() )
- #更新成员,当对应键值不存在时,相当于加入
- m.update({'d':4})
- print(m)
- #删除某个成员
- m.pop('a')
- print(m)

四、序列的索引和切片
列表、元组和字符串都是序列
序列的两个主要特点是索引操作符和切片操作符。
索引操作符让我们可以从序列中抓取一个特定项目。即下标操作,用方括号和数字抓取某个位置的项目,L[0]抓取第一个元素,L[-1]抓取最后一个元素
切片操作符让我们能够获取序列的一个切片,即一部分序列。方括号加一对可选数字,切出某个子片L[1:3] 返回1-2的子片,L[2:]从2开始到最后,L[:]整个
Python笔记——基本数据结构:列表、元组及字典的更多相关文章
- python笔记十(列表生成式、字典生成式、生成器、生成器的并行)
一.列表生成式 列表生成式就是python设置的可以用来可以生成列表的. 如要生成一个0-9的列表我们可以通过以下代码实现: >>> list(range(10)) [0, 1, 2 ...
- python笔记(1)--序列(列表 元组 range)
一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...
- Python—列表元组和字典
Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作
一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name = "Jonathan&q ...
- Python基础5:列表 元祖 字典 集合
[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...
- Python基础5:列表 元祖 字典 集合 Json
[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...
随机推荐
- LeetCode OJ--Path Sum II **
https://oj.leetcode.com/problems/path-sum-ii/ 树的深搜,从根到叶子,并记录符合条件的路径. 注意参数的传递,是否需要使用引用. #include < ...
- 不要使用 reader.Peek() 去读取每行数据
1.问题描述 使用SteamRead的Peek()和ReadLine()来读取流中的数据,如果数据行数太多,会读取不完整(后面有些数据就读不出来了). 比如: while (srResponseRea ...
- IOS-input元素光标偏移乱跑,是什么原因
这中情况只会出现在一些ios手机上,是兼容性的问题,当然我没有认真的确认过是出现在那些ios系统上的: 之所以出现这种情况,肯定是在input上或TA的父元素上用到了position:fixed; 目 ...
- FreeSql 教程引导
FreeSql是一个功能强大的NETStandard库,用于对象关系映射程序(O/RM),以便于开发人员能够使用 .NETStandard 对象来处理数据库,不必经常编写大部分数据访问代码. 特性 支 ...
- git grep 或者 ag 进行快速代码搜索
1.git grep foo 会自动map所有包含foo的文件 2.git grep -n foo 显示行号 3.git grep --name-only foo 只显示文件名 4.git grep ...
- Redis集群设计原理
---恢复内容开始--- Redis集群设计包括2部分:哈希Slot和节点主从,本篇博文通过3张图来搞明白Redis的集群设计. 节点主从: 主从设计不算什么新鲜玩意,在数据库中我们也经常用主从来做读 ...
- laravel svn从win上传linux需要注意事项
一首页设置目录权限: /storage /bootstrap/cache 设置可写权限 二执行命令: php artisan key:generate
- cookie理解
cookie的作用域是domain本身以及domain下的所有子域名. cookie的作用域是domain本身以及domain下的所有子域名. cookie的作用域是domain本身以及domain下 ...
- DELPHI 10.2 TOKYO搭建LINUX MYSQL开发环境
DELPHI 10.2 TOKYO搭建LINUX MYSQL开发环境 笔者使用ubuntu64位LINUX 首先必须保证LINUX可以连互联网. 安装MYSQLsudo apt-get update ...
- 深入理解Activity启动流程(四)–Activity Task的调度算法
本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 深入理解Activity启动流程(一)--Activity启动的概要流程 深入理解Activity启动流程(二)- ...