鱼C论坛

 找回密码
 立即注册
查看: 1087|回复: 11

[已解决]关于python中字典的运用

[复制链接]
发表于 2020-5-25 10:51:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我在爬取信息时遇到了几个问题,现比如有几个地点:北京、上海、深圳、广州、广东、等等。他们每个地点里都对应着不同的数值北京:010000、上海020000、深圳030000等等,想问一下我现在想通过输入城市名字得到这些对应的数值该怎么做?比如 我输入 北京 结果就是010000,因为城市太多,不太可能通过if来做,所以想到字典,可是不太会运用。
{北京:010000、上海:020000、......}
name = input()
num = eval(name)
这样子吗
最佳答案
2020-5-25 10:52:20
本帖最后由 Twilight6 于 2020-5-25 10:54 编辑

假设字典是 data

那么你data[name] 即可了吧?
data = {'北京':'010000','上海':'020000','福建':'1008611'}
name = input('请输入城市名称:')
print(data[name])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-25 10:52:20 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Twilight6 于 2020-5-25 10:54 编辑

假设字典是 data

那么你data[name] 即可了吧?
data = {'北京':'010000','上海':'020000','福建':'1008611'}
name = input('请输入城市名称:')
print(data[name])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 10:54:15 | 显示全部楼层
假设另zd={}
zd["北京"]="010000"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 11:12:05 | 显示全部楼层
dict1 = {'北京':'000001'}
a=input(''请输入城市:)
b=dict[a]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 11:13:17 | 显示全部楼层
本帖最后由 青出于蓝 于 2020-5-25 11:16 编辑

列表不全,供参考。
dict1是列表
a是用户输入的城市
b是调用字典,通过键,找到对应的值
最后,可以在用print把b打印出来,(代码里没写)

如果城市过多,还可以利用import pickle 泡菜,大大减少py文件内存
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 11:25:55 | 显示全部楼层
fromkeys添加键、值。[]调用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-25 13:32:37 | 显示全部楼层
Twilight6 发表于 2020-5-25 10:52
假设字典是 data

那么你data[name] 即可了吧?

问一下如何想同时搜索两个地方或者多个的数值,输入的时候是  北京 上海,他这样能获取到值吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 13:33:39 | 显示全部楼层
ljj19971222 发表于 2020-5-25 13:32
问一下如何想同时搜索两个地方或者多个的数值,输入的时候是  北京 上海,他这样能获取到值吗

那你代码可以把input 输入的内容 通过 split 切割空格 然后再分别 data['北京'] data['上海']
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-25 14:12:39 | 显示全部楼层
Twilight6 发表于 2020-5-25 13:33
那你代码可以把input 输入的内容 通过 split 切割空格 然后再分别 data['北京'] data['上海']

感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-25 14:13:57 | 显示全部楼层

没事~欢迎有问题继续发帖~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-25 17:36:27 | 显示全部楼层
Twilight6 发表于 2020-5-25 14:13
没事~欢迎有问题继续发帖~

哥我还想问一下,如果我判断我输入的这个地区是否在字典里我这样可以吗?
if name in data:
                       执行下一步操作
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-26 15:47:51 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-21 04:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表