用python写一个营养餐生成器
时间: 2023-07-18 16:43:54 浏览: 51
好的,我可以为您提供一个简单的营养餐生成器的代码示例,基于Python 3。
首先,我们需要准备一个包含各种食物及其营养信息的数据库。你可以自己手动创建或者从网上下载。这里我为了演示方便,使用了一个名为“nutritions.csv”的文件,其中包含了食物名称,能量,蛋白质,脂肪和碳水化合物的含量。
接下来,我们可以开始编写代码:
```python
import csv
import random
# 读取食物数据库
food_data = []
with open('nutritions.csv', newline='') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
food_data.append(row)
# 定义生成营养餐的函数
def generate_meal(num_foods):
# 从食物数据库中随机选择指定数量的食物
selected_foods = random.sample(food_data, num_foods)
# 计算所选食物的总营养含量
total_calories = 0
total_protein = 0
total_fat = 0
total_carbs = 0
for food in selected_foods:
total_calories += int(food['energy'])
total_protein += float(food['protein'])
total_fat += float(food['fat'])
total_carbs += float(food['carbs'])
# 输出营养餐信息
print('营养餐包含以下食物:')
for food in selected_foods:
print('- ' + food['name'])
print('总能量:{}千卡'.format(total_calories))
print('总蛋白质:{}克'.format(total_protein))
print('总脂肪:{}克'.format(total_fat))
print('总碳水化合物:{}克'.format(total_carbs))
# 生成包含3种食物的营养餐
generate_meal(3)
```
这个代码会随机从食物数据库中选择指定数量的食物,并计算它们的总营养含量。最后,输出所选食物和总营养含量的信息。
注意,这只是一个简单的示例,实际的营养餐生成器需要更加复杂的算法和更全面的食物数据库。如果你有兴趣,可以进一步探索这个话题。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)