将python类对象中的值附加到python中的另一个类对象

2024-04-24 23:51:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一个python代码来帮助将值从一个python类对象附加到另一个python对象(称之为基对象)。你知道吗

以下是问题陈述:

一:

我得到一个JSON文件作为输入。你知道吗

{
  "Name": {
    "Owner": {
          "FirstName": "sample string 1",
          "LastName": "sample string 1",
             }
          }
}

二:

我使用python代码将其转换为python类对象。你知道吗

# Read JSON File
with open('../JSONFile.json') as data_file:
    data = json.dumps(data_file.read())

# Functions to load and convert to string
def _json_object_hook(d):
    return namedtuple('X', d.keys())(*d.values())
def json2obj(data):
    return json.loads(data, object_hook=_json_object_hook)

# Convert JSON to string format
json_str = str(json2obj(data))

# Create a Python Object of the JSON file
json_obj = json.loads(json_str, object_hook=lambda d: namedtuple('json_obj', d.keys())(*d.values()))

三:

我已经手动创建了一个python类对象。其思想是,如果输入JSON文件中缺少任何属性,那么最终的输出python类对象应该拥有所有缺少值的属性(如果JSON文件中缺少)。你知道吗

class Name(object):
    def __init__(self):
        self.Name = Owner()

    def getatt(self):
        return self

class Owner(object):
    def __init__(self):
        self.Title = ""
        self.FirstName = ""
        self.LastName = ""

问题陈述:

我需要帮助将JSON对象(JSON\u obj)映射/附加到'Name'类对象。由于JSON对象中缺少“Title”,因此它应该在具有NULL值的最终“Name”类对象中可用。如果说不通请告诉我。谢谢你的帮助!你知道吗


Tags: 文件to对象nameselfjsondatastring