python判断是否存在key
⑴ python中的几种特殊数据类型小结
下面介绍了Python中的6种特殊数据类型:
1.list:列表
是一种有序的数据集合,在列表数据结构中的类型并不唯一
定义形式:L=['Micha',100,True]
输出整个列表的时候显示为['Micha',100,True]
输出单个的数值则为:Micha
a.访问,直接使用L[0]表示第一个元素或者使用L[-1]表示最后一个数据,以此类推,但是注意访问不能越界(访问的序号不能超过元素的总数)。
b.添加新元素:使用L.append(100)直接将100加入列表末尾,或者使用L.insert(0,'paul')将paul插入任意位置。
c.删除元素:L.pop()删除最后一个元素,或者L.pop(2)删除第2个位置的元素。
d.替换元素:直接赋值就可以了L[2]=100
2.tuple:元组
是一种有序的列表,但是其一旦创立完毕就不能够更改,即不能插入,删除里面的元素,访问的方式跟List结构一致。
a.t=()其打印后输出的形式是()
若t中的数据为一个数字则需要在后面加逗号,以区分普通数字,如t=(1,),打印出(1,)而非1,多元素的话则没有这个要求。
b.可以在不变的tuple中加入可变的List如t=(‘a’,'b',['A','B'])
3.dict:字典
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
len()函数可以计算任意集合的大小
其中可以简单地使用d[key]的形式来查找对应的value,这和list很像,不同之处是,list必须使用索引返回对应的元素,而dict使用key,当key不存在的时候,使用该key可能出现错误,因此:要避免KeyError发生,有两个办法:
一是先判断一下key是否存在,用in操作符:
if'Paul' in d:
print d['Paul']
如果'Paul'不存在,if语句判断为False,自然不会执行print d['Paul'],从而避免了错误。
二是使用dict本身提供的一个get方法,在Key不存在的时候,返回None:
>>>print d.get('Bart')
59
a.dict中的key不能重复,且dict中的存储的对应值没有顺序,打印出的东西可能是无序的
b.dict的更新:使用d[‘paul']=72求解
c.dict遍历:
d = {'Adam': 95, 'Lisa': 85, 'Bart': 59 }
>>>for key in d:
...print key
遍历只能获得key的值,需要通过key值获得对应的value
4.set:集合
无序但是所有元素唯一,不重复
a.定义:s = set(['A', 'B', 'C']),查看set的内容:
>>>print s
set(['A','C', 'B'])
可以用in来判断是否存在于集合中
b.遍历
s =set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for xin s:
print x[0]+':',x[1]
c.添加元素到集合中
s.add(4)
d.删除元素
s.remove(4)若该元素不在集合中将会报错
5.Unicode编码
Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:
printu'中文'
注意:不加u,中文就不能正常显示中文。
a.转义形式:u'中文 日文 韩文'
b.输出多行:
u'''第一行
第二行'''
c.raw+多行的形式:
ur'''Python的Unicode字符串支持"中文",
"日文",
"韩文"等多种语言'''
如果中文字符串在Python环境下遇到UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释
# -*-coding: utf-8 -*-
目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++另存为, 并选择UTF-8格式保存。
6.raw的作用
如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀r,表示这是一个“raw”字符串,里面的字符就不需要转义了。例如:
r'(~_~)//'
但是r'...'表示法不能表示多行字符串,也不能表示包含'和"的字符串,如果要表示多行字符串。
⑵ python中字典的使用方法怎么样的
字典理解如下
另一个非常有用的 Python 内建数据类型是 字典 (参见 Mapping Types — dict )。字典在某些语言中可能称为 联合内存 ( associative memories )或 联合数组 ( associative arrays )。序列是以连续的整数为索引,与此不同的是,字典以 关键字 为索引,关键字可以是任意不可变类型,通常用字符串或数值。如果元组中只包含字符串和数字,它可以作为关键字,如果它直接或间接的包含了可变对象,就不能当作关键字。不能用列表做关键字,因为列表可以用索引、切割或者 append() 和 extend() 等方法改变。
理解字典的最佳方式是把它看作无序的键: 值对 (key:value 对)集合,键必须是互不相同的(在同一个字典之内)。一对大括号创建一个空的字典: {} 。初始化列表时,在大括号内放置一组逗号分隔的键:值对,这也是字典输出的方式。
字典的主要操作是依据键来存储和析取值。也可以用 del 来删除键:值对(key:value)。如果你用一个已经存在的关键字存储值,以前为该关键字分配的值就会被遗忘。试图从一个不存在的键中取值会导致错误。
对一个字典执行 list(d.keys()) 将返回一个字典中所有关键字组成的无序列表(如果你想要排序,只需使用 sorted(d.keys()) )。[2] 使用 in 关键字(指Python语法)可以检查字典中是否存在某个关键字(指字典)。
⑶ python3.6 判断字典是否有某个key
python3里的字典没有了dict.has_key(key)的方法了, 所有你只能手动判断了
# 不知道咋回事, 没有插入代码的那个东东了, 手动添加tab吧(滑稽.jpg)
def f(dict_like, key_like):
(手动添加tab或四个空格)keys_list = list(dict_like.keys())
(手动添加tab或四个空格)return (key_like in keys_list)
x = dict('a'=1, 'b'=2)
prit(x, 'a')
⑷ python 检测字典是否含有某个键值
a = { }
a.has_key()就知道了
如 字典 a = {1:'aaa',2:'bbb','abc':'ccc','3':'ddd'}
查询字典中是否有键 1
a.has_key(1),如果是返回True,否则返回False
查询是否有键 'abc'
a.has_key('abc')
查询是否有键 '3'
a.has_key('3')
查询是否有值是'aaa'
'aaa' in a.values() 或'aaa' == a.values() 如果是返回True,否则返回False
⑸ python 字典 是否有key
有。Python字典形式是{‘键' : '值'},也就是{‘key值' : 'value值'}
比如一个字典 a = {'name' : 'Miky' , 'age' : 18 , 'tall' : 170 },它的key就是name,age,tall,每个key冒号后对应一个value值。
⑹ python如何判断字典key是否包含字符k
python判断字典key是否包含字符k的方法:
使用“if 'k' in di.keys()”判断字典中的所有key是否包含字符k,如果包含则输出这个key
执行结果如下:
更多Python知识,请关注:Python自学网!!
⑺ python 判断多个键值是否都在一个字典里
foo={"foo":1,"bar":2}
ifall(kinfooforkin("foo","bar")):
print("They'rethere!")
⑻ 在python的dictionary中查找key,如果没有这个Key的信息,如何正常结束程序
可以用 in 来测试key是否存在于dictionary
if "Lily" in dic:
..............
else:
...............
⑼ python字典中key怎么表示区间
python字典中key怎么表示区间,操作方法如下。
设备:mac
系统:ios15.4
软件:python3
1、首先在电脑中,打开操作系统的命令行工具python。