python----字典

本文详细介绍了Python字典的定义、特性、增加、删除、查看等操作。字典是无序的数据集合,通过键值对存储数据。内容包括字典的创建、遍历、增加元素、删除元素的方法,以及如何查看字典的键、值和键值对。此外,还提供了两个练习案例,涉及单词计数和列表元素统计在字典中的出现次数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、字典的定义
字典是一个无序的数据集合,使用print输出字典的时候通常输出的顺序和定义的顺序是不一致的
(1)创建字典

users = ['user1','user2']
passwd = ['123','456']
print(zip(users,passwd))
print(list(zip(users,passwd)))
print(dict(zip(users,passwd)))
s = {}#定义空字典

在这里插入图片描述

字典:key - value 键值对
value可以是任意数据类型


s = {
     'linux':[100,99,88],
     'westos':[190,564,645]
 }

 print(s,type(s))

在这里插入图片描述
(2)工厂函数

d = dict()
print(type(d))
d1 = dict(a=1,b=2)
print(d1,type(d1))

在这里插入图片描述
(3)字典的嵌套

students = {
    '03113009':{
        'name':'wsp',
        'age':18,
        'score':80
    },
    '03113010':{
        'name': 'laoli',
        'age': 30,
        'score': 59
    }
}

print(students['03113010']['name'])

在这里插入图片描述
二、字典特性
d = {
‘1’:‘a’,
‘2’:‘b’
}

(1)字典不支持索引
print(d[0])

在这里插入图片描述
(2)字典不支持切片
print(d[:])
在这里插入图片描述

(3)字典的重复和连接无意义

(4)成员操作符
print(‘1’ in d)
在这里插入图片描述
(5)for循环,默认遍历字典的key值
for i in d:
print(i)
在这里插入图片描述

(5)遍历字典
for i in d:
print(i,d[i])
在这里插入图片描述
三、字典的增加

services = {
    'http':80,
    'ftp':21,
    'ssh':22
}

(1)增加一个元素
如果key值存在,则更新对应的value值
如果key值不存在,则添加对应key-value

services['mysql'] = 3306
print(services)
services['http'] = 443
print(services)

在这里插入图片描述
(2)添加多个key-value值

services_backup = {
    'https':443,
    'tomcat':8080,
    'http':8080
}

services.update(services_backup)
print(services)
 services.update(flask=9000,http=8000)
 print(services)

在这里插入图片描述
(3)setdefault添加key值
如果key值存在,不做修改
如果key值不存在,添加对应的key-value

services.setdefault('http',9090)
print(services)

在这里插入图片描述

services.setdefault('oracle',44575)
print(services)

在这里插入图片描述
四、字典删除

services = {
    'http':80,
    'ftp':21,
    'ssh':22
}

 del services['http']
print(services)

在这里插入图片描述
pop删除指定key的key-value
如果key存在,删除,并返回删除key对应的value
如果不存在,报错

 item = services.pop('http')
  print(item)
print(services)

在这里插入图片描述
popitem删除最后一个key-value值

 item = services.popitem()
print('删除的是:',item)
print(services)

清空字典内容

services.clear()
print(services)

在这里插入图片描述
五、字典查看

services = {
    'http':80,
    'ftp':21,
    'ssh':22
}

(1)查看字典的key值

print(services.keys())

在这里插入图片描述
(2)查看字典的value值

print(services.values())

在这里插入图片描述
(3)查看字典的key-value值

print(services.items())

在这里插入图片描述
(4)查看key的value值
key不存在,默认返回none
key不存在,有default值,则返回default值

print(services.get('http'))

在这里插入图片描述
(5)遍历

 for k,v in services.items():
     print(k,'--->',v)

在这里插入图片描述

 for k in services:
     print(k,'--->',services[k])

在这里插入图片描述

(6)get方法获取指定key对应的value

print(services.get('https','key not exist'))
print(services.get('http','key is exist'))

在这里插入图片描述

六、练习
(1)
重复的单词: 此处认为单词之间以空格为分隔符, 并且不包含,和.>;
1. 用户输入一句英文句子;
2. 打印出每个单词及其重复的次数;
“hello java hello python”
hello 2
java 1
python 1

s = input('s:')

#1.把每个单词分割处理
s_li = s.split()
print(s_li)

#通过字典存储该单词和其出现的次数

word_dict = {}

(2)
依次循环遍历列表
如果列表元素不在字典的key中,将元素作为key 1作为value值
如果列表元素在字典的key中,直接更新元素的value值,在原有的基础上加1

for item in s_li:
   if item not in word_dict:
       word_dict[item] = 1
   else:
       word_dict[item] += 1

print(word_dict)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值