【Python】字典或者对象类型中键或者属性的获取与存在性判断

# 定义测试用对象A,字典B
class A(object):
    length = 10

B ={"length":10}

# 判断对象是否含有某种属性
# 推荐这种方式,更Pythonic
try:
    x = A.lengt
except AttributeError:
    print("does not have {}".format("lengt"))

# 这种low一点
if "leng" in dir(A):
    print(A.length)
else:
    print("does not have {}")

# 或者这种方式
try:
    x = getattr(A,"length")
except AttributeError:
    print("does not have {}".format("lengt"))

# 判断字典是否具有某个键:
try:
     x = B['ssss']
except KeyError:
   print("Not have")

# 或者
if x in x.keys():
    do something
# 或者
if  x.get('gridman'):
    do something
else 
    print("Not have")

# 获取属性的方式
# 对象
print(getattr(A,"length"))
print(A.length)

print(B.get("length","if not have return DefaultValue"))
print(B['length'])

# 注意
从**kwargs中获取参数值可以等同于从字典中获取的方式

网页名称:【Python】字典或者对象类型中键或者属性的获取与存在性判断
网站路径:http://myzitong.com/article/giedhs.html