gpt4 book ai didi

python - 如何在 __repr__ 函数中返回一个列表?

转载 作者:太空宇宙 更新时间:2023-11-04 03:35:48 25 4
gpt4 key购买 nike

我有一个类(class)菜单

class Menu:

options = []
label = 'empty'

def __init__(self, label, options):
self.label = label
self.options = options

def __repr__(self):
return '%s \n=====================\n\n%s' % (self.label, self.options[0])

我在这里要做的是格式化 repr 函数,以便它打印所有选项。现在它将正确打印

Label

\==============

Option 1

但是我可以在那个 return 语句中加入一个 for 循环吗?或者有没有合适的方法来解决这个问题?

最佳答案

您可以加入列表中的所有值,使用 str.join函数并像这样返回

return "{}\n=======\n\nOptions :[{}]".format(self.label, ", ".join(self.options))

注意:

  1. 如果您在 __init__ 中创建一个名为 options 的属性,当您访问它与 self

  2. self.options = options 不会在您分配时创建新列表。它将使 self.optionsoptions 引用相同的列表对象。因此,如果您更改 self.options,它也会反射(reflect)在 options 中。如果你想制作一个副本,你可以像这样使用切片 self.options = options[:]

关于python - 如何在 __repr__ 函数中返回一个列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29165103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com