


Comment utiliser Shelve pour enregistrer des objets en Python
Shelve est un module Python puissant pour la persistance des objets. Lorsque vous rangez un objet, vous devez spécifier une clé qui identifie la valeur de l'objet. De cette manière, le fichier étagère devient une base de données de valeurs stockées, accessibles à tout moment.
Exemple de code pour la mise en rayon en Python
Pour mettre un objet en rayon, importez d'abord le module, puis attribuez la valeur de l'objet comme suit :
import shelve database = shelve.open(filename.suffix) object = Object() database['key'] = object
Par exemple, si vous souhaitez conserver la base de données boursière, vous pouvez ajuster le code suivant :
import shelve stockvalues_db = shelve.open('stockvalues.db') object_ibm = Values.ibm() stockvalues_db['ibm'] = object_ibm object_vmw = Values.vmw() stockvalues_db['vmw'] = object_vmw object_db = Values.db() stockvalues_db['db'] = object_db
"stock valeurs.db" est déjà ouvert, vous n'avez pas besoin de l'ouvrir encore. Au lieu de cela, vous pouvez ouvrir plusieurs bases de données à la fois, écrire dans chacune à volonté et laisser Python les fermer à la fin du programme. Par exemple, vous pouvez conserver une base de données de noms distincte pour chaque symbole et ajouter ce qui suit au code précédent :
## assuming shelve is already imported stocknames_db = shelve.open('stocknames.db') objectname_ibm = Names.ibm() stocknames_db['ibm'] = objectname_ibm objectname_vmw = Names.vmw() stocknames_db['vmw'] = objectname_vmw objectname_db = Names.db() stocknames_db['db'] = objectname_db
Veuillez noter que tout changement dans le nom ou le suffixe du fichier de base de données constitue un fichier différent, formant ainsi différentes bases de données.
Le résultat est un deuxième fichier de base de données contenant les valeurs données. Contrairement à la plupart des fichiers écrits dans un format personnalisé, les bases de données mises de côté sont enregistrées sous forme binaire.
Après avoir écrit les données dans le fichier, celui-ci peut être appelé à tout moment. Si vous souhaitez restaurer les données lors d'une session ultérieure, rouvrez le fichier. S'il s'agit de la même session, appelez simplement la valeur ; le fichier de base de données shelve est ouvert en mode lecture-écriture. Voici la syntaxe de base pour y parvenir :
import shelve database = shelve.open(filename.suffix) object = database['key']
Ainsi, l'exemple de l'exemple précédent se lirait comme suit :
import shelve stockname_file = shelve.open('stocknames.db') stockname_ibm = stockname_file['ibm'] stockname_db = stockname_file['db']
Mettre les considérations de côté
Assurez-vous de noter que la base de données restera ouverte jusqu'à ce qu'elle soit fermée (ou jusqu'à la fin du programme). Donc, si vous écrivez un programme de n'importe quelle taille, vous devez fermer la base de données après l'avoir utilisée. Sinon, la base de données entière (pas seulement les valeurs souhaitées) reste en mémoire et consomme des ressources informatiques.
Pour fermer un fichier mis en attente, utilisez la syntaxe suivante :
database.close()
Si tous les exemples de code ci-dessus étaient combinés en un seul programme, alors nous aurions deux fichiers de base de données ouverts et consommant de la mémoire. Ainsi, après avoir lu les noms de titres dans l'exemple précédent, vous pouvez fermer chaque base de données tour à tour comme ceci :
stockvalues_db.close() stocknames_db.close() stockname_file.close()
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

De nombreux développeurs de sites Web sont confrontés au problème de l'intégration de Node.js ou des services Python sous l'architecture de lampe: la lampe existante (Linux Apache MySQL PHP) a besoin d'un site Web ...

Lorsque vous utilisez Scapy Crawler, la raison pour laquelle les fichiers de stockage persistants ne peuvent pas être écrits? Discussion Lorsque vous apprenez à utiliser Scapy Crawler pour les robots de données, vous rencontrez souvent un ...

Python Process Pool gère les demandes TCP simultanées qui font coincé le client. Lorsque vous utilisez Python pour la programmation réseau, il est crucial de gérer efficacement les demandes TCP simultanées. ...

Explorez profondément la méthode de visualisation de Python Functools.Partial Objet dans Functools.Partial en utilisant Python ...

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Choix de la bibliothèque de développement d'applications de bureau multiplateforme Python De nombreux développeurs Python souhaitent développer des applications de bureau pouvant s'exécuter sur Windows et Linux Systems ...

Précision avec Python: Source de sablier Dessin graphique et vérification d'entrée Cet article résoudra le problème de définition variable rencontré par un novice Python dans le programme de dessin graphique de sablier. Code...

Conversion et statistiques de données: traitement efficace des grands ensembles de données Cet article introduira en détail comment convertir une liste de données contenant des informations sur le produit en une autre contenant ...
