一起学列表和字典

前面我们已知的三种数据类型 1.整数int() 2.浮点数float() 字符串()

再加上今天我们要学习的两种数据类型 ‘列表’和’字典’


目录

列表的输出

列表元素提取单个元素

列表提取多个元素

给列表增加/删除元素

字典

字典增加与删除元素

列表与字典的相同点与不同点:

蓝桥杯备战第一天:


列表的输出

列表需要用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作“元素”。每个元素之间都要用英文逗号隔开。

list1=['川川',2021,1.70]
print(list1)

 如上图,list1是列表名,里面用逗号隔开的我们称之为元素


列表元素提取单个元素

students = ['川川1号','川川2号','川川3号']
print(students[0])

输出的结果是什么呢?是’川川一号‘。 这边注意的是列表第一个元素是从0开始的!

  1. 偏移量是从0开始的,而非我们习惯的从1开始;
  2. 列表名后加带偏移量的中括号,就能取到相应位置的元素。

列表提取多个元素

list2 = [1,2,3,4,5]
print(list2[:])
print(list2[2:])
print(list2[:2])
print(list2[1:3])
print(list2[2:4])

让我们看一下他们的输出分别是什么呢?

分别为1,2,3,4,5

3,4,5

1,2

2,3

3,4

这种用冒号来截取列表元素的操作叫作切片,顾名思义,就是将列表的某个片段拿出来

处理。这种切片的方式可以让我们从列表中取出多个元素。


给列表增加/删除元素

增加:用append()给列表增加元素,每次只能增加一个元素。

删除:del语句非常方便,既能删除一个元素,也能一次删除多个元素

#添加
studens = ['老八','老大','老三']
studens.append('长衫')
print(studens)
#删除
students = ['老八','老大','老三','长衫']
del students[1]
print(students)



字典

首先 什么是字典?其实字典和列表有些相同点:

1.有名称;2.要用=赋值;3.用逗号作为元素间的分隔符。

那么他们之间有什么区别呢?

1.列表外层用的是中括号[ ],字典的外层是大括号{ }

列表中的元素是自成一体的,而字典的元素是由一个个键值对构成的,用英文冒号连接。如'长衫':95,其中我们把'长衫'叫键(key),95叫值(value)。

students = ['长衫','川川','小八']
scores = {'长衫':95,'川川':98,'小八':99}

len()函数:得出一个列表或者字典的长度(元素个数),括号里放列表或字典名称。

students = ['长衫','川川','小八']
scores = {'长衫':95,'川川':98,'小八':99}
print(len(students))
print(len(scores))

需要强调的是,字典中的键具备唯一性,而值可重复。

字典的打印:

scores = {'长衫':95,'川川':98,'小八':99}
print(scores['长衫'])

字典增加与删除元素

删除字典里键值对的代码是del语句del 字典名[键],而新增键值对要用到赋值语句字典名[键] = 值。

scores = {'长衫':95,'川川':98,'小八':99}
scores['山海']=12
del scores['长衫']
print(scores)

列表与字典的相同点与不同点:

相同点:

  1. 有名称;
  2. 要用=赋值
  3. 用逗号作为元素间的分隔符。

不同点:

  1. 列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表。
  2. 字典中的数据是随机排列的,列表中的数据是有序排列的

字典与列表的嵌套


 

列表与字典的嵌套
种类
第一种:列表嵌套列表
students = [['长衫','关羽','小八','小黑'],['小佰','小绿','娜娜子','老高']]
第二种:字典嵌套字典
scores = {
    '第一组':{'长衫':95,'关羽':90,'小八':98,'小黑':75},
    '第二组':{'小佰':99,'小绿':89,'娜娜子':93,'老高':100}
    }
第三种:列表和字典相互嵌套
students = {
    '第一组':['长衫','关羽','小八','小黑'],
    '第二组':['小佰','小绿','娜娜子','老高']
    }
scores = [
    {'长衫':95,'关羽':90,'小八':98,'小黑':75},
    {'小佰':99,'小绿':89,'娜娜子':93,'老高':100}
    ]


蓝桥杯备战第一天:

题目:有四个数字:1、2、3、4,5能组成多少个互不相同且无重复数字的四位数?各是多少?

代码如下:

for i in range(1,6):
    for j in range(1,6):
        for k in range(1,6):
            for p in range(1,6):
             if(i!=j)and(i!=k )and(i!=p)and(j!=k)and(j!=p)and(k!=p):
                print(i,j,k,p)

如果对此文章有疑问的话,可以在评论区交流哦!感谢感谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

内卷衫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值