当前位置 : 主页 > 编程语言 > python >

python基础(part8)--容器类型之元组和字典

来源:互联网 收集:自由互联 发布时间:2022-06-15
鄙人学习笔记 开发工具:Spyder 文章目录 ​​元组​​ ​​定义​​ ​​基本操作​​ ​​创建空元祖和有默认值的元组​​ ​​修改及获取​​ ​​作用​​ ​​字典​​ ​​定

鄙人学习笔记
开发工具:Spyder



文章目录

  • ​​元组​​
  • ​​定义​​
  • ​​基本操作​​
  • ​​创建空元祖和有默认值的元组​​
  • ​​修改及获取​​
  • ​​作用​​
  • ​​字典​​
  • ​​定义​​
  • ​​基本操作​​
  • ​​创建空字典和有初始值的字典​​
  • ​​增加,修改,读取,删除​​
  • ​​获取字典中的键和值​​
  • ​​字典推导式​​
  • ​​案例​​



元组

定义

元祖是由一系列变量组成的不可变序列容器。
备注:不可变是指一但创建,不可以再添加/删阵。

基本操作

创建空元祖和有默认值的元组

代码:

t01 = ()
t02 = tuple()
print(t01, '\n', t02)
print('--------------')
#创建具有默认值的元组
t01 = (1, 2, 3)
t02 = tuple("abc")
t03 = (1, 2, [3, 4])
print(t01, '\n', t02, '\n', t03)

控制台输出:
python基础(part8)--容器类型之元组和字典_python

修改及获取

元祖是不可变序列容器,虽然元祖元素不可变,但是元组内引用对象内的元素可以变。

代码(改变元祖元素):

t01 = (1, 2, [3, 4])
t01[1] = 100

控制台输出:
python基础(part8)--容器类型之元组和字典_python_02
报错了呢~

代码(改变元组内引用对象内的元素):

t01 = (1, 2, [3, 4])
t01[2][0] = 100
print(t01)

控制台输出:
python基础(part8)--容器类型之元组和字典_元组_03

作用

①元组与列表都可以存储一系列变量,但是由于列表会预留内存空间,所以可以增加元素。
②元组会按需分配内存,所以如果变量数量固定,建议使用元组,因为通常占用空间更小。

字典

定义

字典是一种可变容器模型,且可存储任意类型对象。
字典的每个键值对key=>value 用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 。

  • 格式
{key1 : value1, key2 : value2 }

基本操作

创建空字典和有初始值的字典

代码:

#创建空字典
d01 = {}
d02= dict()
print(d01, '\n', d02)
print('--------------')

#创建有初始值的字典
d01 = {"A":1,"B":2}
d02 = dict([("C", 3), ("D", 4)])
print(d01, '\n', d02)

控制台输出:
python基础(part8)--容器类型之元组和字典_基本操作_04

增加,修改,读取,删除

代码:

d01 = {"A":1,"B":2}

#增加
d01["C"] = 3
print(d01)

#修改
d01["A"] = 10
print(d01)

#读取
#若字典中没有"B"这个key则会报错,所以最好先进行判断
if "B" in d01:
print(d01["B"])

#删除
del d01["B"]
print(d01)

控制台输出:
python基础(part8)--容器类型之元组和字典_元组_05

获取字典中的键和值

代码:

d01 = {"A":1,"B":2, "C":3}

for item in d01.items():
print(item[0],"-",item[1])

print("--------------")

for key,value in d01.items():
print(key, "-", value)

控制台输出:
python基础(part8)--容器类型之元组和字典_默认值_06

字典推导式

  • 语法
{:值的表达式 for , in 可迭代对象 if 条件}
  • 例子

代码:

d01 = {item:item**2 for item in range(1, 10) if item % 2 == 0}

print(d01)

结果:
python基础(part8)--容器类型之元组和字典_python_07

案例

代码:

list01 = ["小黄", "大白", "奥尼尔"]
list02 = [2, 4, 6]
list03 = [("A", 1), ("B", 2), ("C", 3)]

d01 = {list01[i]:list02[i] for i in range(len(list01))}
d02 = {key:value for key,value in list03}

print(d01)
print(d02)

结果:
python基础(part8)--容器类型之元组和字典_python_08

上一篇:python基础(part10)--函数
下一篇:没有了
网友评论