gpt4 book ai didi

python - “dict”对象没有属性 'append'

转载 作者:行者123 更新时间:2023-12-01 08:57:56 25 4
gpt4 key购买 nike

我正在遵循一个关于设置类(class)的教程,以制作酒吧账单为例,但无法弄清楚为什么在向账单添加新项目时出现错误

'dict'对象没有属性'append'

代码

class Bar_tab:

#dictionary
menu = {
'wine':5,
'beer':2,
'coke':3,
'chicken':9,
'dessert':7
}

#set up the class
def __init__(self):
#set up empty initial total and item list
#customer will add items and total will add up
#these variables will exist within the class
self.total = 0
self.items = {}

#function for add items to tab
def add(self,item):
self.items.append(item)
#add the value from menu dictionary for the 'item'
self.total += self.menu[item]

def pay_bill (self,tax,service):
#tax will only exist within this function in the class
tax=(tax/100) *self.total
service=(service/100)*self.total
total=self.total + tax + service

for items in self.items:
print(f'{item} ${self.menu[item]}')

print(f'Total is ${total}')`

self.items.append(item) 行出现错误

最佳答案

self.item = {}self.items 初始化为空 dictionary 。字典没有 append() 方法,因为它的主要目的是将键与值关联起来。查看代码,其目的是让 self.menu 成为一个字典(将菜单项映射到价格),而 self.items 成为 list (账单项目),并且 list 确实有 append方法。

要将 self.items 初始化为空列表,请将分配修改为:

self.item = []

关于python - “dict”对象没有属性 'append',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52676526/

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