Python 使用输入初始化类内的词典

Python 使用输入初始化类内的词典,python,python-3.x,class,dictionary,oop,Python,Python 3.x,Class,Dictionary,Oop,如何翻译: my_dict = {input("ENTER THE KEY: "): input("Please enter the value for the key: ")} 进入一个类,例如: class StackOverflow: def __init__(self, key, value): self.key = key self.value = value 您可以简单地执行以下操作: so = StackOverflow

如何翻译:

my_dict = {input("ENTER THE KEY: "): input("Please enter the value for the key: ")}
进入一个类,例如:

class StackOverflow:
      def __init__(self, key, value):
           self.key = key
           self.value = value
您可以简单地执行以下操作:

 so = StackOverflow(key=input("enter key:"), value=input("enter value:"))
如果数据绝对必须来自具有单个键/值对的字典,则可以使用
items()
方法,获取第一个(即唯一)项,并使用
*
运算符将其解压缩:

my_object=StackOverflow(*列表(my_dict.items())[0])
但是,如果您真的希望将数据放在对象中,那么首先将数据放入字典是没有什么意义的。我建议以简单、合理的方式编写,每行代码只做一件事:

key=input(“输入键:”)
值=输入(“请输入键:”)的值
my_object=StackOverflow(键、值)

基于您对键/值对使用了字典,我假设字典中可能会有多个键/值对

如果是这样,这将起作用:

my_dict = {input("ENTER THE KEY: "): input("Please enter the value for the key: ")}

class StackOverflow:
      def __init__(self, key, value):
           self.key = key
           self.value = value


class_objects = [StackOverflow(key=k, value=v) for k,v in my_dict.items()]

print(class_objects)
print(class_objects[0].key)
print(class_objects[0].value)

这似乎是一个X Y问题。也许,如果你解释一下你真正想要达到的目标,而不仅仅是一个假设性的问题,人们可能会建议如何去做或者用更好的方式去做