4 回答

TA貢獻1942條經驗 獲得超3個贊
你可以使用字典。例如:
have = {"milk": 2, "eggs": 3, "flour": 0.5}
need = {"milk": 1, "eggs": 5, "flour": 2.5}
ingredients = {i:"Yes" if have[i] >= need[i] else "No" for i in have.keys()}
輸出:
print(ingredients)
{'milk': 'Yes', 'eggs': 'No', 'flour': 'No'}
如果你想要一個函數來告訴你用你擁有的原料可以做多少蛋糕,你可以使用以下代碼:
def how_many(need, have):
results = {i:have[i]//need[i] for i in have.keys()}
return min(results.values())

TA貢獻1848條經驗 獲得超10個贊
假設輸入如下
milk=200
eggs=10
flour=1000
milk_reqd=100
eggs_reqd=5
flour_reqd=2000
have=[milk, eggs, flour]
need=[milk_reqd, eggs_reqd, flour_reqd]
解決方案
import numpy as np
have=np.array(have)
need=np.array(need)
現在您可以執(zhí)行所有操作,例如
need>have
或者
need<=have
或者
need-have
獲取可以制作的蛋糕數量
n_cakes=int(min(have/need))

TA貢獻1865條經驗 獲得超7個贊
如果你需要比較的數量列表,你可以使用單行列表理解(只能比較==,>,<否則如果你使用>=和<=和==它們將是重疊操作) -
milk_have = 10
eggs_have = 20
flour_have = 30
milk_need = 10
eggs_need = 25
flour_need = 3
have = [milk_have, eggs_have, flour_have]
need = [milk_need, eggs_need, flour_need]
['==' if i[0]==i[1] else '>' if i[0]>i[1] else '<' for i in zip(have, need)]
['==', '<', '>']

TA貢獻1993條經驗 獲得超6個贊
have = ('milk', 'eggs', 'flour',"k")
need = ('milk', 'eggs', 'flour',"l")
incredients = {}
for i in range(len(have)):
count = 0
if have[i] == need[i]:
count +=1
incredients[have[i]] = count
輸出:{'eggs': 1, 'flour': 1, 'k': 0, 'milk': 1}
添加回答
舉報