Python-如何使用点“” 访问字典成员?

简介: Python-如何使用点“” 访问字典成员?

如何解决Python-如何使用点“” 访问字典成员??
你可以使用我刚刚制作的此类来做。通过此类,你可以Map像其他字典(包括json序列化)一样使用该对象,也可以使用点符号。希望对你有所帮助:

class Map(dict):

"""
Example:
m = Map({'first_name': 'Eduardo'}, last_name='Pool', age=24, sports=['Soccer'])
"""
def __init__(self, *args, **kwargs):
    super(Map, self).__init__(*args, **kwargs)
    for arg in args:
        if isinstance(arg, dict):
            for k, v in arg.iteritems():
                self[k] = v
    if kwargs:
        for k, v in kwargs.iteritems():
            self[k] = v
def __getattr__(self, attr):
    return self.get(attr)
def __setattr__(self, key, value):
    self.__setitem__(key, value)
def __setitem__(self, key, value):
    super(Map, self).__setitem__(key, value)
    self.__dict__.update({key: value})
def __delattr__(self, item):
    self.__delitem__(item)
def __delitem__(self, key):
    super(Map, self).__delitem__(key)
    del self.__dict__[key]

用法示例:

m = Map({'first_name': 'Eduardo'}, last_name='Pool', age=24, sports=['Soccer'])

Add new key

m.new_key = 'Hello World!'

Or

m['new_key'] = 'Hello World!'
print m.new_key
print m['new_key']

Update values

m.new_key = 'Yay!'

Or

m['new_key'] = 'Yay!'

Delete key

del m.new_key

Or

del m['new_key']
我一直将其保存在util文件中。你也可以在自己的类中将其用作混合。

class dotdict(dict):

"""dot.notation access to dictionary attributes"""
__getattr__ = dict.get
__setattr__ = dict.__setitem__
__delattr__ = dict.__delitem__

mydict = {'val':'it works'}
nested_dict = {'val':'nested works too'}
mydict = dotdict(mydict)
mydict.val

'it works'

mydict.nested = dotdict(nested_dict)
mydict.nested.val

'nested works too'

解决方法
如何通过点“。”访问Python词典成员?

例如,mydict['val']我想写而不是写mydict.val。

我也想以这种方式访问​​嵌套的字典。例如

mydict.mydict2.val
将指

mydict = { 'mydict2': { 'val': ... } }
声明:地推任务网所有作品(图片、文字)均由用户自行上传分享,仅供网友学习交流。

相关文章
|
2月前
|
存储 JSON 索引
一文让你彻底搞懂 Python 字典是怎么实现的
一文让你彻底搞懂 Python 字典是怎么实现的
46 13
|
2月前
|
存储 数据安全/隐私保护 Python
Python常用数据结构——字典的应用
Python常用数据结构——字典的应用
|
28天前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
29 0
|
1月前
|
存储 自然语言处理 数据库
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
|
1月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
|
1月前
|
存储 Java Serverless
【Python】字典
【Python】字典
27 0
|
1月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (一)
Python操作:字符串--列表--元组--字典--运算符 (一)
|
1月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (二)
Python操作:字符串--列表--元组--字典--运算符 (二)
|
2月前
|
存储 数据安全/隐私保护 Python
Python常用数据结构—字典
Python常用数据结构—字典
WK
|
2月前
|
存储 安全 索引
如何在Python中访问字典中的值
在Python中,访问字典(Dictionary)中的值非常简单。字典是一种无序的集合,它存储了键值对(key-value pairs),其中每个键都是唯一的,并映射到一个值上。要访问字典中的值,你需要使用键作为索引。
WK
31 0

热门文章

最新文章