如何在没有括号的情况下打印具有多个值的字典?
How to print a dictionary with multiple values without brackets?
到目前为止我有这个:
class Wine:
def __init__(self, key):
a = {}
value = []
a.setdefault(key, [])
def addYear(self, value):
a[key].insert(1, value)
def addProd(self, value):
a[key].insert(2, value)
def addCountry(self, value):
a[key].insert(3, value)
def addPrice(self, value):
a[key].insert(4, value)
def __str__(self):
for key, value in a.items():
value = ', '.join(map(str, value))
print("{}, {}".format(key, value))
b = Wine("Bread and Butter Pinot Noir")
b.addYear("2017")
b.addProd("Sonoma County")
b.addCountry("USA")
b.addPrice("30 USD")
b.__str__()
我希望输出如下所示:
面包和黄油黑皮诺,2017 年,美国索诺玛县,30 美元
但它说“名称 'a' 未定义”
我不认为你理解 类 真的很好,但你仍然需要使用 self.attribute 来使用 class 函数中的任何属性,这里有一个代码可以给你所需的输出
class Wine:
def __init__(self, key):
self.a = {}
self.key = key
self.value = []
self.a.setdefault(key, [])
def addYear(self, value):
self.a[self.key].insert(1, value)
def addProd(self, value):
self.a[self.key].insert(2, value)
def addCountry(self, value):
self.a[self.key].insert(3, value)
def addPrice(self, value):
self.a[self.key].insert(4, value)
def __str__(self):
for key, value in self.a.items():
value = ', '.join(map(str, value))
print("{}, {}".format(key, value))
b = Wine("Bread and Butter Pinot Noir")
b.addYear("2017")
b.addProd("Sonoma County")
b.addCountry("USA")
b.addPrice("30 USD")
b.__str__()
到目前为止我有这个:
class Wine:
def __init__(self, key):
a = {}
value = []
a.setdefault(key, [])
def addYear(self, value):
a[key].insert(1, value)
def addProd(self, value):
a[key].insert(2, value)
def addCountry(self, value):
a[key].insert(3, value)
def addPrice(self, value):
a[key].insert(4, value)
def __str__(self):
for key, value in a.items():
value = ', '.join(map(str, value))
print("{}, {}".format(key, value))
b = Wine("Bread and Butter Pinot Noir")
b.addYear("2017")
b.addProd("Sonoma County")
b.addCountry("USA")
b.addPrice("30 USD")
b.__str__()
我希望输出如下所示:
面包和黄油黑皮诺,2017 年,美国索诺玛县,30 美元
但它说“名称 'a' 未定义”
我不认为你理解 类 真的很好,但你仍然需要使用 self.attribute 来使用 class 函数中的任何属性,这里有一个代码可以给你所需的输出
class Wine:
def __init__(self, key):
self.a = {}
self.key = key
self.value = []
self.a.setdefault(key, [])
def addYear(self, value):
self.a[self.key].insert(1, value)
def addProd(self, value):
self.a[self.key].insert(2, value)
def addCountry(self, value):
self.a[self.key].insert(3, value)
def addPrice(self, value):
self.a[self.key].insert(4, value)
def __str__(self):
for key, value in self.a.items():
value = ', '.join(map(str, value))
print("{}, {}".format(key, value))
b = Wine("Bread and Butter Pinot Noir")
b.addYear("2017")
b.addProd("Sonoma County")
b.addCountry("USA")
b.addPrice("30 USD")
b.__str__()