python之元组,列表和字典的区别
Python语言包含6种内建的序列,其中,有两种主要的类型:列表和元组。
列表是可以修改的,而元组不可以,如果要添加或者删除某些元素,就只能用列表,为了限制某些元素,就会用到元组。一般来说,列表可以替代元组。在列表之中,有索引,分片,加,乘等等。
一、list(列表) 用方括号[]
列表是Python的一种内置数据类型,list是一种有序的集合,可以随时添加和删除其中的元素。
获取list中的元素用角标获取,角标可以使用正角标,也可以使用负角标,越界时抛出IndexErro
list中的元素的数据类型也可以不一样(就像Java一样),也可以在list内放另外一个list,这样也就形成了一个多维集合
常用的方法有:
1.len()获取列表的长度
2.X.append(“你好”) 向列表中添加元素
3.X.pop()弹出末尾元素
zoo = ['pig','tiger','dog']
print(len(zoo))
zoo.append("nihao")
print(zoo)
print(zoo.pop())
print(zoo[0])
print(zoo[-1])
单列表操作
# 元组操作 x = [5, 6, 2, 1, 6, 7, 2, 7, 9] # append()方法,就是在列表尾部添加元素
x.append(2)
print(x) # insert(开始位置,插入的值),插入一个元素到指定位置
x.insert(2, 99) # 2是索引,表示这个元素要放什么位置,99是插入的元
print(x) # 删除元素 remove()
x.remove(2) # 这个2是指一个元素不是索引,如果多个,默认移除第一个
print(x) x.remove(x[2]) # 根据索引,直接移除索引对应的元素
print(x) # pop(),移除列表尾部最后一个元素
x.pop()
print(x) # 列表引用
print(x[0:5]) # 相当于一个范围,从左边索引到右边索引,但是不包括右边索引 # -1 索引代表最后一个元素,-2代表倒数第二个
# 此时x= [5, 6, 1, 6, 7, 2, 7, 9]
print(x[-1])
print(x[-2]) # 查找某一个元素的索引值,一下1的索引应该是2
print(x.index(1)) # 计算某一个元素出现的次数
print(x.count(6)) # 元素6出现了2次 # 排序,默认从小到大
x.sort()
print(x) # 字母排序
y = ['Janet', 'Jessy', 'Anthony', 'Tom', 'Alice', 'Bob']
y.sort()
print(y) # 注此处的y为重新排序的y,,y.sort()没有对应的返回值
多列表
# 多维列表 x = [[5, 6], [6, 7], [7, 2], [2, 5], [4, 9]] # 根据索引引用列表元素,例如打印【6,7】
# print(x[1])
# 打印【6,7】中的7
print(x[1][1]) # 三维
y = [[[5, 7], [6, 6]], [[6, 6], [7, 8]], [7, 2], [2, 5]]
# 打印[[6,6],[7,8]]这个部分中的[6,6]里的第一个6
print(y[1][0][0])
# y看起来有的晕,我们换一个写法 y = [
[[5, 7], [6, 6]],
[[6, 6], [7, 8]],
[7, 2],
[2, 5]
]
# 这样稍微清晰,一点,Y有4个元素,前面两个是两两二维组成,后面两个是单独的二维
二、tuple(元组) 用小括号()
元祖也是一种有序列表,和list非常类似,不同点是tuple一旦定义了就不可修改,在一定意义上这也提高了代码的安全性,查询方法和list一样,使用的时候能用tuple的就用tuple。
在定义只有一个元素的元祖时加入"逗号"以免产生和数学运算的歧义
可变的tuple
当元祖内部放一个列表的时候,这个元祖中的列表的值就可以变化了,实际上tuple并没有改变,变的是内部list的值
country = ('bj',['sh','gd'])
print(country[1])
print(country[1][0])
country[1][0] ="nihao"
print(country[1][0])
三、字典
Dictionary (字典) : 用{}来定义
Dict={'name':'Pei', 'age':'26'}
# 字典 # 我们随便设计几个城市的明天的最高温度
tem ={'北京':22,'上海':23,'深圳':24,'广州':25,'南京':26} print(tem) # 打印广州最高温度
print(tem['广州']) # 字典中添加一个元素
tem['重庆'] = 28
print(tem) # 删除上海
del tem['上海']
print(tem) # 更新某一个值
tem['北京'] = 28
print(tem)
# 字典 # 字典里嵌套列表
tem = {'北京': [22, '多云'], '上海': [23, '晴天'], '深圳': [23, '小雨'], '广州': [23, '阴天']} print(tem) # 打印北京天气整体情况
print(tem['北京']) # 打印北京最高温度
print(tem['北京'][0])
python之元组,列表和字典的区别的更多相关文章
- python中的列表和字典
列表和字典的区别: 列表是有序排列的一些物件,而字典是将一些物件(键)对应到另外一些物件(值)的数据结构; 应用场景: 字典 各种需要通过某个值去查看另一个值的场合,也就是一个虚拟的“查询表”,实现方 ...
- python字符串、列表和字典的说明
python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...
- Python 第二篇:python字符串、列表和字典的基本操作方法
本文基于python 3.5.1 python常见的数据类型有字串.列表.元组.字典等,本文将详细介绍每一种数据类型的操作方法. 一:str字串的操作方法: 1.capitalize()--> ...
- python学习之列表和字典
列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6] +号两边必须是相同类型[1,2,3,4,5,6] >>> ...
- python 1:列表和字典
初学Python, 对列表和字典的嵌套使用. phoneBook = [] #列表 list peopleInfo = {} #字典 dict i=0 while i<3: peopleInfo ...
- python开发技巧---列表、字典、集合值的过滤
主要学习列表,字典,集合表达式的应用: 列表的解析式: 生成一个随机列表: In [4]: datalist = [randint(-10,10) for _ in range(10)] In [5] ...
- (引用)Python 元素、元组、列表、字典的区别
转载:http://www.th7.cn/Program/Python/201407/231060.shtml 元素: 元组:tuple=('nice','to','meet','you') 列表:l ...
- Python中元组,列表,字典的区别
http://blog.csdn.net/yasi_xi/article/details/38384047
- Python学习三|列表、字典、元组、集合的特点以及类的一些定义
此表借鉴于他人 定义 使用方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner', ...
随机推荐
- kindeditor Springmvc 整和解决图片上传问题
1. 在编辑页面引入js <script type="text/javascript" charset="utf-8" src="${baseP ...
- CodeForces 467D(267Div2-D)Fedor and Essay (排序+dfs)
D. Fedor and Essay time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- java接口中成员变量和方法的默认修饰符(转)
Java的interface中,成员变量的默认修饰符为:public static final 所以我们在interface中定义成员变量的时候,可以 1:public static final St ...
- HyperLedger Fabric 多机部署(一)
本文参考:http://www.lijiaocn.com/%E9%A1%B9%E7%9B%AE/2018/04/26/hyperledger-fabric-deploy.html 学习. 1.准备工 ...
- 洛谷P2814 家谱
P2814 家谱 题目背景 现代的人对于本家族血统越来越感兴趣. 题目描述 给出充足的父子关系,请你编写程序找到某个人的最早的祖先. 输入输出格式 输入格式: 输入由多行组成,首先是一系列有关父子关系 ...
- java使用Robot类在eclipse上实现自动编写代码
运行时,把输入法关掉,切换成系统自带的输入法即可: 第二个类是自定义的键值Map集合,主要是为了方便输入字符串,有需要的可以自行添加: 主要的代码如下,会创建一个名称为Automaton.java的类 ...
- 社交系统ThinkSNS+在研发过程中,如何做到 Laravel 配置可以网站后台配置
什么是ThinkSNS+ ThinkSNS(简称TS),一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案. 本文分享下利用 Laravel 的 Bootstrapp ...
- java基础第十二篇之集合、增强for循环、迭代器和泛型
Collection接口中的常用方法: * 所有的子类子接口都是具有的 * 集合的方法:增删改查 * * public boolean add(E e);//添加元素 返回值表示是否添加成功 * pu ...
- react-native-contact 安卓已测试,
1. 下载模块 npm install react-native-contacts --save 2.安卓配置: a.在android/settings.gradle include ':rea ...
- 黑马旅游网 url-pattern不加斜杠报错 java.util.concurrent.ExecutioException: org.apache.catalina.LifecycleException