久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Python-如何使用點“。” 訪問字典成員?

瀏覽:26日期:2022-08-07 08:37:56
如何解決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] = vif 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 keym.new_key = ’Hello World!’# Orm[’new_key’] = ’Hello World!’print m.new_keyprint m[’new_key’]# Update valuesm.new_key = ’Yay!’# Orm[’new_key’] = ’Yay!’# Delete keydel m.new_key# Ordel 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’: ... } }

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 海城市| 辉县市| 会同县| 临安市| 原平市| 梨树县| 亳州市| 遂川县| 桦甸市| 尼玛县| 涪陵区| 安丘市| 昌江| 永修县| 香河县| 双牌县| 道真| 龙口市| 隆德县| 茂名市| 永清县| 尚义县| 定远县| 南溪县| 繁峙县| 平山县| 武宁县| 铁岭县| 孟津县| 韶关市| 广水市| 永胜县| 房产| 朝阳区| 资源县| 宁都县| 清水河县| 太白县| 南丹县| 吴忠市| 仁化县|