关于python中字典的运用
我在爬取信息时遇到了几个问题,现比如有几个地点:北京、上海、深圳、广州、广东、等等。他们每个地点里都对应着不同的数值北京:010000、上海020000、深圳030000等等,想问一下我现在想通过输入城市名字得到这些对应的数值该怎么做?比如 我输入 北京 结果就是010000,因为城市太多,不太可能通过if来做,所以想到字典,可是不太会运用。{北京:010000、上海:020000、......}
name = input()
num = eval(name)
这样子吗 本帖最后由 Twilight6 于 2020-5-25 10:54 编辑
假设字典是 data
那么你data 即可了吧?
data = {'北京':'010000','上海':'020000','福建':'1008611'}
name = input('请输入城市名称:')
print(data) 假设另zd={}
zd["北京"]="010000"
dict1 = {'北京':'000001'}
a=input(''请输入城市:)
b=dict 本帖最后由 青出于蓝 于 2020-5-25 11:16 编辑
列表不全,供参考。
dict1是列表
a是用户输入的城市
b是调用字典,通过键,找到对应的值
最后,可以在用print把b打印出来,(代码里没写)
如果城市过多,还可以利用import pickle 泡菜,大大减少py文件内存 fromkeys添加键、值。[]调用 Twilight6 发表于 2020-5-25 10:52
假设字典是 data
那么你data 即可了吧?
问一下如何想同时搜索两个地方或者多个的数值,输入的时候是北京 上海,他这样能获取到值吗 ljj19971222 发表于 2020-5-25 13:32
问一下如何想同时搜索两个地方或者多个的数值,输入的时候是北京 上海,他这样能获取到值吗
那你代码可以把input 输入的内容 通过 split 切割空格 然后再分别 data['北京'] data['上海'] Twilight6 发表于 2020-5-25 13:33
那你代码可以把input 输入的内容 通过 split 切割空格 然后再分别 data['北京'] data['上海']
感谢{:5_102:} ljj19971222 发表于 2020-5-25 14:12
感谢
没事~欢迎有问题继续发帖~ Twilight6 发表于 2020-5-25 14:13
没事~欢迎有问题继续发帖~
哥我还想问一下,如果我判断我输入的这个地区是否在字典里我这样可以吗?
if name in data:
执行下一步操作 {:10_257:}
页:
[1]