🍕🔥 Pizza is great! 🔥🍕

Manipolazione degli Ingredienti

Il modulo di manipolazione degli ingredienti fornisce strumenti per creare, modificare e analizzare ingredienti virtuali in TomatoPy.

Creazione degli Ingredienti

Creazione di Ingredienti di Base

from tomatopy import Ingredient

# Crea un ingrediente di base
tomato = Ingredient(
    name="tomato",
    amount=1,
    unit="whole",
    properties={
        "ripeness": 0.8,
        "water_content": 0.95,
        "sugar_content": 0.03
    }
)

Classi di Ingredienti Specializzati

from tomatopy import Tomato, Garlic, Basil

# Crea ingredienti specializzati
san_marzano = Tomato(
    ripeness=0.8,
    variety="San Marzano",
    weight=150
)

fresh_garlic = Garlic(
    cloves=3,
    freshness=0.9,
    size="medium"
)

sweet_basil = Basil(
    leaves=10,
    freshness=0.95,
    variety="Genovese"
)

Modifica degli Ingredienti

Aggiornamenti delle Proprietà

# Aggiorna le proprietà dell'ingrediente
tomato.properties["ripeness"] = 0.9
tomato.properties["water_content"] = 0.92

# Aggiornamento batch delle proprietà
tomato.update_properties({
    "ripeness": 0.9,
    "water_content": 0.92,
    "sugar_content": 0.04
})

Conversione delle Unità

# Converti tra unità
tomato.convert_to_imperial()  # Converte da metrico a imperiale
tomato.convert_volume("ml", "cups")  # Converte tra unità di volume

# Ottieni misurazioni in diverse unità
print(tomato.get_weight("g"))  # 150
print(tomato.get_weight("oz"))  # 5.29

Analisi degli Ingredienti

Proprietà Fisiche

# Ottieni proprietà fisiche
print(tomato.get_density())  # 1.02 g/ml
print(tomato.get_volume())   # 147 ml
print(tomato.get_surface_area())  # 150 cm²

Analisi Chimica

# Analizza le proprietà chimiche
print(tomato.get_ph())  # 4.5
print(tomato.get_water_content())  # 0.95
print(tomato.get_sugar_content())  # 0.03

Operazioni sugli Ingredienti

Taglio e Tritatura

# Taglia gli ingredienti
diced_tomato = tomato.cut(
    method="dice",
    size="medium",
    consistency="uniform"
)

# Tritura gli ingredienti
chopped_garlic = fresh_garlic.chop(
    fineness="medium",
    method="mince"
)

Combinazione degli Ingredienti

# Combina gli ingredienti
mixture = tomato.combine(
    fresh_garlic,
    sweet_basil,
    method="mix",
    consistency="chunky"
)

Controllo della Qualità

Controllo della Freschezza

# Controlla la freschezza dell'ingrediente
if tomato.is_fresh():
    print("L'ingrediente è fresco")
else:
    print("L'ingrediente potrebbe essere scaduto")

# Ottieni punteggio di freschezza
freshness_score = tomato.get_freshness_score()  # 0.85

Valutazione della Qualità

# Valuta la qualità dell'ingrediente
quality_report = tomato.assess_quality()
print(quality_report.overall_score)  # 0.92
print(quality_report.recommendations)  # ["Consider using within 2 days"]

Gestione degli Errori

try:
    # Tentativo di operazione non valida
    tomato.cut(method="invalid_method")
except IngredientError as e:
    print(f"Errore: {e}")  # "Metodo di taglio non valido"

try:
    # Tentativo di aggiornamento proprietà non valido
    tomato.update_properties({"invalid_property": 1.0})
except PropertyError as e:
    print(f"Errore: {e}")  # "Nome proprietà non valido"

Migliori Pratiche

  1. Controlla sempre lo stato dell'ingrediente

    if tomato.state == "fresh":
        # Proceed with operation
  2. Use Type Hints

    from typing import Dict, Any
    
    def create_ingredient(
        name: str,
        properties: Dict[str, Any]
    ) -> Ingredient:
        return Ingredient(name=name, properties=properties)
  3. Handle Unit Conversions Carefully

    # Always specify units explicitly
    weight_grams = tomato.get_weight("g")
    weight_ounces = tomato.get_weight("oz")

Riferimento API

Classi

  • Ingrediente: Classe base per tutti gli ingredienti

  • Pomodoro: Ingrediente di pomodoro specializzato

  • Aglio: Ingrediente di aglio specializzato

  • Basilico: Ingrediente di basilico specializzato

Metodi

Classe Ingrediente

  • __init__(nome, quantità, unità, proprietà)

  • aggiorna_proprietà(proprietà)

  • converti_in_imperiale()

  • converti_volume(dalla_unità, alla_unità)

  • ottieni_densità()

  • ottieni_volume()

  • ottieni_area_superficiale()

  • ottieni_ph()

  • ottieni_contenuto_acqua()

  • ottieni_contenuto_zucchero()

  • taglia(metodo, dimensione, consistenza)

  • trita(fineness, metodo)

  • combina(*ingredienti, metodo, consistenza)

  • è_fresco()

  • ottieni_punteggio_freschezza()

  • valuta_qualità()

Prossimi Passi

Was this helpful?