如何通过点“。”访问Python词典成员?
例如,mydict['val']
我想写而不是写mydict.val
。
我也想以这种方式访问嵌套的字典。例如
mydict.mydict2.val
将指
mydict = { 'mydict2': { 'val': ... } }
你可以使用我刚刚制作的此类来做。通过此类,你可以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']
我想更改字典的纬度和经度值。 它正在抛出以下错误消息: 对于此它在targetWaypoints内打印一个完整的字典。我想打印纬度值。 提前谢谢。
如何在Swift中到达以下字典中的第二个整数(键)?而且,当我这样做的时候,我怎样才能找到第二个字典里的字串呢? 我尝试编写(例如)var test:Int=activeCustomers[1][1],但这不起作用。它说字典里没有一个叫下标的成员。
问题内容: 我正在尝试使Django函数进行JSON序列化并将其返回到对象中。 我正在这样使用它: 但是我得到这个错误: 有任何想法吗? 编辑:这是回溯: http://dpaste.com/38786/ 问题答案: 更新:Python现在拥有自己的json处理程序,只需使用即可代替。 Django序列化器模块旨在序列化Django ORM对象。如果要对常规Python字典进行编码,则应使用sim
问题内容: 考虑像这样的字典 例如,如何访问该词典的特定元素?例如,我想在格式化Apple的第一个元素(在我们的情况下仅是“ American”)之后打印第一个元素。 附加信息上面的数据结构是通过在python函数中解析输入文件创建的。一旦创建,它在该运行中将保持不变。 我在函数中使用此数据结构。 因此,如果文件发生更改,则下次运行此应用程序时,文件的内容将有所不同,因此此数据结构的内容将有所不同
使用Python我试图访问一个字段是字符串格式的CSV文件,其中有一个字典列表。 一行 NameError Traceback(最近的调用最后)在 () ---- C:\Program Data\Anaconda3\lib\site-包\熊猫\core\series.py在应用(自我,功能,convert_dtype,args,**kwds)3190 其他:3191值=self.astype(对象
问题内容: 我有一个实现Swift 4的结构。是否有一种简单的内置方法将该结构编码为字典? 问题答案: 如果您不介意数据移位,可以使用以下方法: 或可选变体 假设符合或确实可以做到这一点。