1. 苏葳的备忘录首页
  2. 编程

Python中字典键值的大小写无关查找的方法

python dict通常,忽略字典中键的大小写不是个好主意,因为dict类型的键是大小写敏感的,若忽略则可能造成两键的重复,但某些情况下,比如urllib2.openurl返回的zzz.headers,即http报文的header域,可看作一个字典,并且此字典中的各header域项是大小写无关的。我们在用zzz.headers[‘Content-Type’]取某项时,就不得不面对大小写问题,如果你不确定网站如何返回给你header值的大小写,你可能就取不到想要的字典值。

用正则表达式取值是一个办法,那么还有其它简便的方法吗?有两种简单些的方法,第一种是在字典中查找’aa’是否存在,可用if ‘aa’ in set(k.lower() for k in dict)) 来以小写形式判断。或者以dict(zip(map(string.lower,a.keys()),a.values()))的方式重新构造一个小写键的字典,然后再进行查找。

原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/497.html

发表评论

邮箱地址不会被公开。 必填项已用*标注