برنامه نویسی

مدیریت لیست خرید در پایتون با فایل های JSON

در این مقاله، نحوه استفاده از پایتون برای مدیریت لیست های خرید با استفاده از فایل های JSON را بررسی خواهیم کرد. ما از قابلیت‌های پایتون برای ایجاد، فهرست کردن، به‌روزرسانی، حذف، ذخیره و بارگذاری لیست‌های خرید در قالب JSON استفاده می‌کنیم، که روشی کارآمد و ساختاریافته برای نگهداری و اصلاح فهرست‌های خریدمان ارائه می‌کند.

معرفی

لیست های خرید ابزاری ضروری برای سازماندهی آنچه که باید بخریم است. به جای مدیریت دستی آنها، می‌توانیم از پایتون برای خودکار کردن این فرآیند با استفاده از فایل‌های JSON به عنوان ذخیره‌سازی دائمی استفاده کنیم. در مرحله بعد یک کلاس در پایتون به نام ایجاد می کنیم ListaCompra که به ما این امکان را می دهد تا با لیست های خرید خود کلیه عملیات لازم را انجام دهیم.

ایجاد کلاس ListaCompra

import os
import json

class ListaCompra:
    def __init__(self):
        self.listas = {}

    def crear(self, lista: list, name: str, tipo: int = 0):
        """
        Crea una nueva lista de compra.

        Args:
        - lista (list): Elementos de la lista de compra.
        - name (str): Nombre de la lista.
        - tipo (int, opcional): Tipo de lista (por defecto 0).
        """
        if name in self.listas:
            print(f"La lista '{name}' ya existe.")
        else:
            if tipo == 0:
                self.listas[name] = lista
        return self.listas

    def count(self):
        """
        Retorna la cantidad de listas de compras creadas.
        """
        return len(self.listas.keys())

    def listar(self):
        """
        Lista todas las listas de compras con sus elementos.
        """
        for k, v in self.listas.items():
            print(k)
            for item in v:
                if isinstance(item, list):
                    item = ' '.join(item)
                print(f"  - {item}")
            print('')

    def actualizar(self, name, content):
        """
        Actualiza una lista de compra existente añadiendo un nuevo elemento.

        Args:
        - name (str): Nombre de la lista a actualizar.
        - content: Elemento a añadir a la lista.
        """
        if name in self.listas:
            self.listas[name].append(content)
        else:
            print(f"La lista '{name}' no existe.")
        return self.listas.get(name, [])

    def eliminar(self, name):
        """
        Elimina una lista de compra existente.

        Args:
        - name (str): Nombre de la lista a eliminar.
        """
        if name in self.listas:
            del(self.listas[name])
        else:
            print(f"La lista '{name}' no existe.")

    def guardar(self):
        """
        Guarda las listas de compra en un archivo JSON llamado 'lista_compra.json'.
        """
        with open('lista_compra.json', 'w') as file:
            json.dump([{k: v} for k,v in self.listas.items()], file, indent=4)

    def cargar(self):
        """
        Carga las listas de compra desde el archivo JSON 'lista_compra.json'.
        """
        if os.path.exists('lista_compra.json'):
            with open('lista_compra.json', 'r') as file:
                data = json.load(file)
                for i, lista in enumerate(data):
                    self.listas[f"lista_{i+1}"] = lista["compras"]
        else:
            print("El archivo 'lista_compra.json' no existe.")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

توضیح کلاس ListaCompra

مقدار دهی اولیه و ویژگی ها

  • __init__(self): کلاس را با یک دیکشنری خالی راه اندازی می کند self.listas جایی که لیست های خرید ذخیره خواهد شد.

روش های کلاس

  • crear(self, lista, name, tipo=0): یک لیست خرید جدید با یک نام منحصر به فرد ایجاد کنید name و لیستی از اقلام lista. پارامتر اختیاری tipo به شما امکان می دهد نوع لیست را مشخص کنید.

  • count(self): تعداد لیست های خرید ایجاد شده تا کنون را برمی گرداند.

  • listar(self): تمام لیست های خرید موجود را با موارد مربوطه فهرست می کند.

  • actualizar(self, name, content): لیست خرید موجود را با افزودن یک مورد جدید به روز می کند content.

  • eliminar(self, name): لیست خرید موجود را بر اساس نام آن حذف کنید name.

  • guardar(self): تمام لیست های خرید را در یک فایل JSON به نام ذخیره می کند lista_compra.json.

  • cargar(self): لیست های خرید را از فایل JSON بارگیری کنید lista_compra.json به فرهنگ لغت self.listas.

استفاده کلاس ListaCompra

os.system('clear')
app = ListaCompra()
app.crear(['patatas', 'arroz', 'potato'], 'comprar')
app.crear(['galletas'], 'deseos')

app.guardar()
app.cargar()
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

توضیح کاربرد

  • os.system('clear'): برای مشاهده بهتر، قبل از اجرای برنامه، کنسول را پاک کنید.

  • ایجاد یک نمونه app از کلاس ListaCompra.

  • ایجاد دو لیست خرید با استفاده از روش crear.

  • ذخیره لیست خرید در فایل JSON با استفاده از روش guardar.

  • بارگیری لیست خرید از فایل JSON با استفاده از روش cargar.

نتیجه

در این مقاله نحوه پیاده‌سازی یک کلاس در پایتون برای مدیریت لیست‌های خرید با استفاده از فایل‌های JSON به عنوان ذخیره‌سازی دائمی را مشاهده کردیم. این تکنیک نه تنها مدیریت داده ها را ساده می کند، بلکه روشی ساختاریافته و کارآمد برای به روز نگه داشتن لیست خرید ما و در دسترس نگه داشتن لیست های خرید ما از هر کجا ارائه می دهد.

امیدوارم این مقاله مقدمه خوبی برای مدیریت داده های ساخت یافته با فایل های پایتون و JSON به شما داده باشد!


این طرح کلی یک راهنمای گام به گام برای نوشتن یک پست وبلاگ در مورد نحوه مدیریت لیست های خرید در پایتون با استفاده از فایل های JSON در اختیار شما قرار می دهد. می‌توانید هر بخش را در صورت نیاز گسترش دهید و نمونه‌های اضافی یا جزئیات فنی را بسته به مخاطب هدف مقاله اضافه کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا