Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: Как посчитать калорийность продуктов с помощью python? Ваша задача!

  1. Как посчитать калорийность продуктов с помощью python? Ваша задача!

    Привет, ребята! У меня есть задачка: я хочу вычислить калорийность продуктов с использованием python. Кто-нибудь уже делал что-то подобное? Есть база данных с продуктами и их калорийностью за 100 грамм. Я представляю это как словари или таблицы. Как лучше это реализовать? Подскажите, какие библиотеки юзать, может, numpy или pandas? Думал также о tkinter, чтобы сделать простенький GUI. Буду рад любым примерам и подсказкам. В общем, брошен вызов! Как на это смотрите?



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Привет! Давай я тебе дам примерчик на pandas. Время подгружать:
    Программный код:
    import pandas as pd
    # Создаем DataFrame с продуктами и их калорийностью за 100 грамм
    data = {
      
    'продукт': ['яблоко''банан''котлета'],
      
    'калории': [5289230]
    }
    df pd.DataFrame(data)
    # Считаем калорийность на указанное количество грамм
    def calc_calories(productweight):
        
    row df[df['продукт'] == product]
        if 
    not row.empty:
            return 
    row.iloc[0]['калории'] * (weight 100)
        else:
            return 
    "Продукт не найден"
          
    print(calc_calories('яблоко'150))  # Пример: яблоко на 150 г 
    Вот такой вот экспириенс. Надеюсь, поможет!

  4. Цитата Сообщение от Гулливер
    Привет! Давай я тебе дам примерчик на pandas. Время подгружать:
    Программный код:
    import pandas as pd
    # Создаем DataFrame с продуктами и их калорийностью за 100 грамм
    data = {
      
    'продукт': ['яблоко''банан''котлета'],
      
    'калории': [5289230]
    }
    df pd.DataFrame(data)
    # Считаем калорийность на указанное количество грамм
    def calc_calories(productweight):
        
    row df[df['продукт'] == product]
        if 
    not row.empty:
            return 
    row.iloc[0]['калории'] * (weight 100)
        else:
            return 
    "Продукт не найден"
          
    print(calc_calories('яблоко'150))  # Пример: яблоко на 150 г 
    Вот такой вот экспириенс. Надеюсь, поможет!
    Неплохо, можно даже GUI прикрутить потом! Pandas топчик.

  5. Я бы ещё предложил использовать tkinter для дверствования GUI. Вот пример:
    Программный код:
    import tkinter as tk
    from tkinter import ttk
    import pandas 
    as pd
          
    data 
    = {
        
    'продукт': ['яблоко''банан''котлета'],
        
    'калории': [5289230]
    }
          
    df pd.DataFrame(data)
          
    def calc_calories():
        
    product combobox.get()
        
    weight float(entry.get())
        
    row df[df['продукт'] == product]
        if 
    not row.empty:
            
    result.set(row.iloc[0]['калории'] * (weight 100))
        else:
            
    result.set("Продукт не найден")
          
    root tk.Tk()
    root.title("Калькулятор калорийности")
          
    combobox ttk.Combobox(rootvalues=df['продукт'].tolist())
    combobox.pack()
          
    entry tk.Entry(root)
    entry.pack()
          
    button tk.Button(roottext="Рассчитать"command=calc_calories)
    button.pack()
          
    result tk.StringVar()
    result_label tk.Label(roottextvariable=result)
    result_label.pack()
          
    root.mainloop() 
    GUI не топчик, но сам факт. Профит больше наглядный.

  6. Цитата Сообщение от Себастян
    Я бы ещё предложил использовать tkinter для дверствования GUI. Вот пример:
    Программный код:
    import tkinter as tk
    from tkinter import ttk
    import pandas 
    as pd
          
    data 
    = {
        
    'продукт': ['яблоко''банан''котлета'],
        
    'калории': [5289230]
    }
          
    df pd.DataFrame(data)
          
    def calc_calories():
        
    product combobox.get()
        
    weight float(entry.get())
        
    row df[df['продукт'] == product]
        if 
    not row.empty:
            
    result.set(row.iloc[0]['калории'] * (weight 100))
        else:
            
    result.set("Продукт не найден")
          
    root tk.Tk()
    root.title("Калькулятор калорийности")
          
    combobox ttk.Combobox(rootvalues=df['продукт'].tolist())
    combobox.pack()
          
    entry tk.Entry(root)
    entry.pack()
          
    button tk.Button(roottext="Рассчитать"command=calc_calories)
    button.pack()
          
    result tk.StringVar()
    result_label tk.Label(roottextvariable=result)
    result_label.pack()
          
    root.mainloop() 
    GUI не топчик, но сам факт. Профит больше наглядный.
    Эх, tkinter конечно олдскул, но для простого GUI самое то.

  7. Чел, если basic pandas для тебя не прёт, попробуй numpy. Это тоже норм варик:
    Программный код:
    import numpy as np
          
    data 
    np.array([
        [
    'яблоко'52],
        [
    'банан'89],
        [
    'котлета'230]
     ])
          
    def calc_calories(productweight):
        for 
    item in data:
            if 
    item[0] == product:
                return 
    float(item[1]) * (weight 100)
        return 
    "Продукт не найден"
          
    print(calc_calories('банан'200))  # Пример на 200г 
    Всё по красоте!

  8. Цитата Сообщение от Vano88
    Чел, если basic pandas для тебя не прёт, попробуй numpy. Это тоже норм варик:
    Программный код:
    import numpy as np
          
    data 
    np.array([
        [
    'яблоко'52],
        [
    'банан'89],
        [
    'котлета'230]
     ])
          
    def calc_calories(productweight):
        for 
    item in data:
            if 
    item[0] == product:
                return 
    float(item[1]) * (weight 100)
        return 
    "Продукт не найден"
          
    print(calc_calories('банан'200))  # Пример на 200г 
    Всё по красоте!
    Ну, numpy куда быстрее, если данных много. Плюс, примеры понятные.

  9. Можно сделать сразу API на Flask, если надо шарить результаты с других уголков. Напиши, если надо будет примеров с Flask, сделаю пару роутиков.

  10. Цитата Сообщение от AirWhisperer396
    Можно сделать сразу API на Flask, если надо шарить результаты с других уголков. Напиши, если надо будет примеров с Flask, сделаю пару роутиков.
    Опасный путь. Flask для амбициозных планов. Респект, если соберётесь!

Страница 1 из 2 12 ПоследняяПоследняя