Python基本语法(二)——一维列表字典元组

目录

一、列表、字典、元组对比

二、列表的形式及用法

2.1 列表的形式及创建

2.2 列表中元素的提取/查找

2.3 向列表中增加元素

2.4 从列表中删除元素

2.5 更改列表中的元素

2.6 列表相关的其他函数

三、元组的形式及用法

3.1 元组的形式及创建

3.2 元组中元素的提取/查找

3.3 元组不能增删改

3.4 元组相关的其他函数

四、字典的形式及用法

4.1 字典的形式及创建

4.2 字典中元素的提取/查找

4.3 向字典中增加/修改元素

4.4 从字典中删除元素

4.5 字典相关的其他函数


一、列表、字典、元组对比

列表元组字典
括号形式[](){}
存储多种数据类型可以可以

基本可以

注意键名必须不可变,所以不能为列表

存储多个数据可以可以可以
创建完成后增删改数据可以不可以可以
数据的排列顺序没有
数据唯一性

键唯一

键值可以不唯一

二、列表的形式及用法

2.1 列表的形式及创建

一个列表需要用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作“元素”。每个元素之间都要用英文逗号隔开,创建列表的语法如下所示,列表名 = [元素1,元素2,......]

偏移量:元素在列表中是有序排列的,偏移量代表元素在列表中的位置,从0开始依次排列:012…….

list1 = ['小明',18,1.70]

生成一系列数A—B-1:range(A, B)

生成A—B-1数字列表:

list(range(A, B,步长))

2.2 列表中元素的提取/查找

1)通过索引(即偏移量)提取元素

单个元素:

a = lists1[1]  #结合上文,这里把18赋给了a

多个元素:

Lists1[:]   #提取所有元素
Lists1[:9]  #提取偏移量为0~8的所有元素,取左不取右
Lists1[1:]  #提取偏移量为1及1之后的的所有元素

2)从列表中找出某个值第一个匹配项的索引位置(想想与“返回某个值在列表中的位置”有什么区别?)

Index()函数,用法:

List1.index(x,start,end)

参数x:查找的对象,start:查找的起始位置,end:查找的结束位置。其中由start和end会形成一个左闭右开的索引区间,若索引区间包含查找对象,该函数会返回查找对象x的索引位置;若索引区间不包含查找对象,则抛出异常。

2.3 向列表中增加元素

1)append()函数,用法如下,A可以是单个字符串、数字或者单个列表、字典等,A代表的内容会自动加在列表的末尾

list1.append(A)

2)insert()函数,用法:

List1.insert(1,'小李') #在列表中插入'小李'到偏移量为1的位置

3)extend()函数,用法如下,在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list1.extend(seq) #在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

2.4 从列表中删除元素

1)del()函数,通过索引,指定删除某个位置/某个区间内的元素

del list1[1:4]

2)remove()函数,移除列表中某个值的第一个匹配项(想想与“指定删除列表中的某个元素”有什么区别?)

List1.remove('小明')

3)pop()函数,移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list.pop([index=-1])

2.5 更改列表中的元素

List1[索引] = xxxx

2.6 列表相关的其他函数

函数作用
cmp(list1, list2)比较两个列表的元素
len(list)列表元素个数/列表长度
max(list)返回列表元素最大值
min(list)返回列表元素最小值
list(seq)将元组转换为列表
list.reverse()反向列表中元素
list.sort(cmp=None, key=None, reverse=False)对原列表进行排序,真实排序,(升序)A.sort()  (降序)A.sort(reverse=True)
list.sorted(cmp=None, key=None, reverse=False)对原列表进行排序,临时排序,(升序)A.sorted()  (降序)A.sorted(reverse=True)

三、元组的形式及用法

3.1 元组的形式及创建

元组是无序排列的,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可

tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"

创建空元组

tup1 = ()

元组中只包含一个元素时,需要在元素后面添加逗号

tup1 = (20,)

注意,任意无符号的对象,以逗号隔开,默认为元组,如下实例中tup4被创建为一个元组:

tup4 = 'abc', -4.24e93, 18+6.6j, 'xyz'

3.2 元组中元素的提取/查找

通过索引(即偏移量)提取元素

单个元素:

a = tup1[1]  #结合上文,这里把'physics'赋给了a

多个元素:

tup1[:]   #提取所有元素
tup1[:4]  #提取偏移量为0~3的所有元素,取左不取右
tup1[1:]  #提取偏移量为1及1之后的的所有元素

2)从列表中找出某个值第一个匹配项的索引位置(想想与“返回某个值在列表中的位置”有什么区别?)

Index()函数,用法:

List1.index(x,start,end)

参数x:查找的对象,start:查找的起始位置,end:查找的结束位置。其中由start和end会形成一个左闭右开的索引区间,若索引区间包含查找对象,该函数会返回查找对象x的索引位置;若索引区间不包含查找对象,则抛出异常。

3.3 元组不能增删改

元组中的数据是不可以增加、删除、更改的

但是我们可以将元组组合或者删除整个元组

tup3 = tup1 + tup2  #两个元组组合
del tup3  #删除整个元组

3.4 元组相关的其他函数

函数作用
cmp(tuple1, tuple2)比较两个元组的元素
len(tuple)元组元素个数/列表长度
max(tuple)返回元组元素最大值
min(tuple)返回元组元素最小值
tuple(seq)将列表转换为元组

四、字典的形式及用法

4.1 字典的形式及创建

1)一般字典创建方法

字典的每个键值 key=>value 对用冒号分割,每个对之间用逗号分割,整个字典包括在花括号 {} 中

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字。

2)空字典创建方法

emptyDict = {}         #直接使用大括号进行空字典创建
emptyDict = dict()     #使用内建函数 dict() 创建空字典

4.2 字典中元素的提取/查找

1) 通过键找到键值

#!/usr/bin/python3
 
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])

输出结果 

tinydict['Name']:  Runoob
tinydict['Age']:  7

2) 利用get()函数 

返回指定键的值,如果键不在字典中返回 default 设置的默认值

tinydict.get(key, default=None)

4.3 向字典中增加/修改元素

1)与创建字典类似,直接声明键名并赋予新的键值

tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
tinydict['Age'] = 8               # 更新 Age
tinydict['School'] = "菜鸟教程"  # 添加信息
 
 
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])

2)default()函数

 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

tinydict.setdefault(key,default=None)

3)update()函数

把字典dict2的键/值对更新到dict里

tinydict.update(dict2)

4.4 从字典中删除元素

del()函数,能够删除单一元素也能用于删除整个字典

clear()函数,清空字典

tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
del tinydict['Name'] # 删除键 'Name'
tinydict.clear()     # 清空字典
del tinydict         # 删除字典

pop()函数 ,删除字典 key(键)所对应的值,并返回被删除的值

tinydict.pop(key[,default])
site= {'name': '123', 'alexa': 10000, 'url': 'www.runoob.com'}
element = site. Pop('name')

popitem()函数,返回并删除字典中的最后一对键和值。

site= {'name': '菜鸟教程', 'alexa': 10000, 'url': 'www.runoob.com'}
result = site.popitem()
# ('url': 'www.runoob.com') 最后插入会被删除
print(result)

输出结果(键与键值之间用逗号隔开) 

'url', 'www.runoob.com'

4.5 字典相关的其他函数

函数作用
len(dict)计算字典元素个数,即键的总数。
str(dict)把字典转化为字符串并输出
type(variable)返回输入的变量类型,如果变量是字典就返回字典类型。
dict.copy()返回一个字典的浅复制
dict.fromkeys()创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
dict.get(key, default=None)返回指定键的值,如果键不在字典中返回 default 设置的默认值
key in dict如果键在字典dict里返回true,否则返回false
dict.items()以列表返回一个视图对象
dict.keys()返回一个视图对象
dict.values()返回一个视图对象

注:以上大部分信息来自菜鸟教程网站Python3 教程 | 菜鸟教程 (runoob.com),个人学习记录

  • 21
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值