مدیریت لیست خرید در پایتون با فایل های 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 در اختیار شما قرار می دهد. میتوانید هر بخش را در صورت نیاز گسترش دهید و نمونههای اضافی یا جزئیات فنی را بسته به مخاطب هدف مقاله اضافه کنید.