python基础语法(二)

0x04 列表


什么是列表?

简单的理解我们可以把列表理解为pyhon语言中数据存储的地方,他的定义如下

students = ['小明','小红','小刚']

取单个元素语法

取出多个元素语法

上面这种用冒号来截取列表元素的操作叫作切片,顾名思义,就是将列表的某个片段拿出来处理。这种切片的方式可以让我们从列表中取出多个元素

总结规律就是:左右空,取到头;左要取,右不取

删改列表

增加元素:需要用到append()函数给列表增加元素,append的意思是附加,增补

  • 列表中的元素可以是字符串、数字等,也可以是列表本身(即列表内部支持嵌套)
  • append函数后的参数只要满足数量为一即可(单个列表也会视作一个元素)
  • append后的元素,会添加在列表的末尾

删除元素:使用del关键字,语法为语法是:del 列表名[元素的索引]

0x05 字典


什么是字典?

字典和列表的功能其实是一样的,都是用来存储数据,这也是他们的相同点

那么他们的不同点是什么呢?

students = ['小明','小红','小刚']  #列表
scores = {'小明':95,'小红':90,'小刚':90}   #字典

从结构上来看

  • 列表外层用的是中括号[],字典的外层是大括号{}
  • 列表中的元素是自成一体的,而字典的元素是由一个个键值对构成的,用英文冒号连接

len()函数可以计算字典或者列表的长度,可以直接输出:print(len(scores))

那怎么打印字典里面的值呢?

scores = {'小明': 95, '小红': 90, '小刚': 90}
print(scores['小明'])

删改数据

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

当然值得注意的是,修改字典里面的内容,可以直接对键进行赋值

总结以上


不同点

一个很重要的不同点是列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表

而字典相比起来就显得随和很多,调动顺序也不影响。因为列表中的数据是有序排列的,而字典中的数据是随机排列的

这也是为什么两者数据读取方法会不同的原因:列表有序,要用偏移量定位;字典无序,便通过唯一的键来取值

共同点

1、在列表和字典中,如果要修改元素,都可用赋值语句来完成

list1 = ['小明','小红','小刚','小美']
list1[1] = '小蓝'
print(list1)

dict1 = {'小明':'男'}
dict1['小明'] = '女'
print(dict1)

2、支持任意嵌套。除之前学过的数据类型外,列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表

下面是列表嵌套列表

字典嵌套字典如下

scores = {
    '第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},
    '第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}
    }
print(scores['第二组']['小芳'])   #输出88

相互嵌套,有没有感觉像json格式了

# 最外层是大括号,所以是字典嵌套列表,先找到字典的键对应的列表,再判断列表中要取出元素的偏移量
students = {
    '第一组':['小明','小红','小刚','小美'],
    '第二组':['小强','小兰','小伟','小芳']
    }
print(students['第一组'][3])
#取出'第一组'对应列表偏移量为3的元素,即'小美'

# 最外层是中括号,所以是列表嵌套字典,先判断字典是列表的第几个元素,再找出要取出的值相对应的键
scores = [
    {'小明':95,'小红':90,'小刚':100,'小美':85},
    {'小强':99,'小兰':89,'小伟':93,'小芳':88}
    ]
print(scores[1]['小强'])
#先定位到列表偏移量为1的元素,即第二个字典,再取出字典里键为'小强'对应的值,即99。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值