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之元组,列表和字典的区别的更多相关文章

  1. python中的列表和字典

    列表和字典的区别: 列表是有序排列的一些物件,而字典是将一些物件(键)对应到另外一些物件(值)的数据结构; 应用场景: 字典 各种需要通过某个值去查看另一个值的场合,也就是一个虚拟的“查询表”,实现方 ...

  2. python字符串、列表和字典的说明

    python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...

  3. Python 第二篇:python字符串、列表和字典的基本操作方法

    本文基于python 3.5.1 python常见的数据类型有字串.列表.元组.字典等,本文将详细介绍每一种数据类型的操作方法. 一:str字串的操作方法: 1.capitalize()-->  ...

  4. python学习之列表和字典

    列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6]    +号两边必须是相同类型[1,2,3,4,5,6] >>> ...

  5. python 1:列表和字典

    初学Python, 对列表和字典的嵌套使用. phoneBook = [] #列表 list peopleInfo = {} #字典 dict i=0 while i<3: peopleInfo ...

  6. python开发技巧---列表、字典、集合值的过滤

    主要学习列表,字典,集合表达式的应用: 列表的解析式: 生成一个随机列表: In [4]: datalist = [randint(-10,10) for _ in range(10)] In [5] ...

  7. (引用)Python 元素、元组、列表、字典的区别

    转载:http://www.th7.cn/Program/Python/201407/231060.shtml 元素: 元组:tuple=('nice','to','meet','you') 列表:l ...

  8. Python中元组,列表,字典的区别

    http://blog.csdn.net/yasi_xi/article/details/38384047

  9. Python学习三|列表、字典、元组、集合的特点以及类的一些定义

    此表借鉴于他人 定义 使用方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner', ...

随机推荐

  1. 【机器学习】文本分类——朴素贝叶斯Bayes

    朴素贝叶斯主要用于文本分类.文本分类常见三大算法:KNN.朴素贝叶斯.支持向量机SVM. 一.贝叶斯定理 贝叶斯公式思想:利用已知值来估计未知概率.已知某条件概率,如何得到两个事件交换后的概率,也就是 ...

  2. idea+tomcat 解决 debug超级慢 问题

    最近在用intellij idea 开发程序,发现debug的时候启动得特别慢,正常run的时候启动的特别快,相差30多倍. 方法断点会戏剧性的降低debug的速度.当时并没有在意,因为并不清晰这个方 ...

  3. 安装完SAP后BASIS的配置流程

    安装完SAP后BASIS配置流程 安装完SAP后,配置流程. 1.升级kernel. 2.TCD SLICENSE: License Administration install > Syste ...

  4. zoj 3640 Help Me Escape (概率dp 递归求期望)

    题目链接 Help Me Escape Time Limit: 2 Seconds      Memory Limit: 32768 KB Background     If thou doest w ...

  5. 判断ip地址是否为内网ip或局域网ip

    bool IsLanIp(string& ip) { ,) == ,) == ,) == "192.") { return true; } else { return fa ...

  6. PHP正则表达式,看这一篇就够啦!

    前言 不知道你们有没有这个感觉,看正则表达式就像看天文数字一样,什么电话号码.邮箱的正则表达式,上网复制一下粘贴下来就搞定了.完全不知道这写的是什么玩意.后来我自己也想学一下,因为感觉用处还是挺大的. ...

  7. include跟include_once 以及跟require的区别

    include如果引入两个文件,都有一个相同的函数名,那么就会发生重定义的错误.使用include_once可以避免此错误,一般都_once用的比较多.应该根据实际情况需求include和_once的 ...

  8. 使用PowerDesigner创建物理模型并生成SQL语句在MySQL中生成表

    我使用的PowerDesigner的版本为16.5,创建物理模型后,使用PowerDesigner生成的SQL语句,在MySQL中创建表. 1. 打开Power Designer软件,在弹出的欢迎对话 ...

  9. 洛谷P1587 [NOI2016]循环之美

    传送门 不会,先坑着 https://kelin.blog.luogu.org/solution-p1587 //minamoto #include<cstdio> #include< ...

  10. 阿里云ECS测试服务器部署

    前序:为了提供一个干净的测试环境,更好地验证产品问题,也为了防止被开发人员频繁发布代码而打断测试工作,故测试团队搭建了一台阿里云ECS服务器,以下是具体的部署信息: 1. 安装JDK Java版本:J ...