嗨,你能帮我解决一下如何递增元组的最后一个元素.目前我有这个元组列表
items :: [Grocery]
items = [("Water", "Drink Section", 1),
("Squash", "Drink Section", 1),
("Apple", "Fruit Section", 1),
("Plates", "Disposable Section", 1),
("Plates", "Ceramic Section", 1)]
Run Code Online (Sandbox Code Playgroud)
而我想要做的是每次购买物品时将其增加1并输出数据库.目前我有这个
sales:: [database] -> String -> String-> [database]
sales db itemName sectionName = []
sales ((item, section, qty): xs) itemName sectionName
| item == itemName && section== sectionName = [(item, section, qty + 1)]
| otherwise = []
Run Code Online (Sandbox Code Playgroud)
我仍然在增加它,我陷入困境.请帮助我,我仍然是这种语言的新手.谢谢!
编辑
它现在全部工作,但你如何输出列表的其余部分?我试过recordSale xs trackArtist trackTitle但是当我测试它时,我增加的旧记录也被打印而不是被修改?让我说我增加苹果它打印的是这个
[("Apple", "Fruit Section", 2),("Water", "Drink Section", 1),("Squash", "Drink …Run Code Online (Sandbox Code Playgroud) 我只想问你如何在python中搜索元组列表,说:
[("A","B",3),("C","D",4),("E","F",5)]
Run Code Online (Sandbox Code Playgroud)
假设用户搜索"A", "B":因为"A", "B"在列表中,它将递增3.并将再次输出列表
[("A","B",4),("C","D",4),("E","F",5)]
Run Code Online (Sandbox Code Playgroud)
如果用户搜索"A", "S",程序将创建一个新记录并将其保存在数据库中
[("A","S",1),("A","B",3),("C","D",4),("E","F",5)]
Run Code Online (Sandbox Code Playgroud)