Résumé de l'apprentissage de base de Python (8)
10. Fichiers et exceptions
Apprenez à traiter des fichiers, laissez le programme analyser rapidement de grandes quantités de données, apprenez à gérer les erreurs et évitez que le programme ne plante en cas d'accident. En savoir plus sur les exceptions. Les exceptions sont des objets spéciaux créés par Python. Elles sont utilisées pour gérer les erreurs qui se produisent lors de l'exécution d'un programme et améliorer l'applicabilité, la convivialité et la stabilité du programme.
Module d'apprentissage json, json peut être utilisé pour enregistrer les données utilisateur afin d'éviter toute perte lorsque le programme s'arrête de manière inattendue.
Apprendre à traiter des fichiers et à enregistrer des données peut rendre le programme plus facile à utiliser. Les utilisateurs peuvent choisir le type de données à saisir et quand les saisir. Ils peuvent également fermer le programme après avoir utilisé le programme pour traiter quelque chose et continuer à le faire. la prochaine fois. .
Apprenez à gérer les exceptions, aidez à gérer les situations où les fichiers n'existent pas et traitez divers problèmes susceptibles de faire planter le programme, rendant le programme plus robuste face à diverses erreurs, que ces données erronées proviennent d'erreurs involontaires ou contre les tentatives malveillantes de corrompre un programme.
10.1 Lecture des données à partir de fichiers
Pour lire un fichier, vous pouvez lire le fichier entier d'un coup ou lire le fichier ligne par ligne. Choisissez votre propre méthode de lecture en fonction de la taille du fichier.
10.1.1 Lire l'intégralité du fichier
En Python, il y a 3 étapes pour lire et écrire des fichiers :
1. Appelez la fonction open() et renvoyez un objet File.
2. Appelez la méthode read() ou write() de l'objet File.
3. Appelez la méthode close() de l'objet File pour fermer le fichier.
Utilisez la fonction open() pour ouvrir le fichier
avec open(nom de fichier) comme file_object :
contents = file_object.read() # Pas besoin d'appeler la méthode de fermeture, cela ferme automatiquement le fichier.
Trouvera le fichier à ouvrir dans le répertoire courant du fichier.
La méthode read() lit le contenu du fichier
Méthode read() de l'objet fichier :
|
Vous pouvez utiliser la méthode readlines() pour obtenir une liste de chaînes du fichier. Chaque chaîne de la liste correspond à chaque ligne de texte.
10.1.2 Chemin du fichier
Notez les barres obliques, les barres obliques inverses sous Windows et les barres obliques sous OS X et Linux.
avec open('text_filesfilename.txt') comme file_object.
Il existe deux façons de spécifier un chemin de fichier.
- "Chemin absolu" commence toujours à partir du dossier racine.
- "Chemin relatif", qui est relatif au répertoire de travail actuel du programme.
Chemin absolu du fichier
Gagner :
file_path = 'C:Usersehmatthesother_filestext_filesfilename.txt'
avec open(file_path) comme file_object :
Linux et OS :
file_path = '/home/ehmatthes/other_files/text_files/filename.txt'
avec open(file_path) comme file_object :
Il existe également des dossiers point (.) et point (..). Ce ne sont pas de vrais dossiers, mais des noms spéciaux qui peuvent être utilisés dans les chemins. Un seul point (« point »), lorsqu'il est utilisé comme nom de dossier, est l'abréviation de « ce répertoire ». Les deux points (« points ») désignent le dossier parent.
Gestion des chemins absolus et relatifs
1.os.path module fournit certaines fonctions qui renvoient le chemin absolu d'un chemin relatif et vérifient si le chemin donné est un chemin absolu.
2. L'appel de os.path.abspath(path) renverra la chaîne du chemin absolu du paramètre. C'est un moyen simple de convertir un chemin relatif en chemin absolu.
3. Appelez os.path.isabs(path). Si le paramètre est un chemin absolu, il renvoie True. Si le paramètre est un chemin relatif, il renvoie False.
4. L'appel de os.path.relpath(path, start) renverra la chaîne du chemin relatif du chemin de départ au chemin.
5. Si start n'est pas fourni, le répertoire de travail actuel est utilisé comme chemin de démarrage.
10.1.3 Lire les données du fichier ligne par ligne
pour ligne dans ligne :
fonction de remplacement replace()
file.replace('chien', 'chat')
10.2 Écriture de fichiers
10.2.1 Écrire un fichier vide
open('file', 'w') fournit deux paramètres réels, le nom du fichier et l'opération
1. Mode lecture 'r'
2. Mode d'écriture 'w'
3. Mode supplémentaire 'a'
4. Mode lecture et écriture ‘r+’
5. Si le paramètre mode est omis, python n'ouvrira le fichier qu'en mode lecture seule par défaut.
6. Si le fichier n'existe pas, open générera automatiquement le fichier.
7. L'entrée est Entrée et la sortie est Sortie Par conséquent, nous désignons collectivement l'entrée et la sortie par Entrée/Sortie, ou en abrégé IO.
8. Lors de la saisie du mot de passe, si vous souhaitez qu'il soit invisible, vous devez utiliser la méthode getpass dans le module getpass.
Remarque, S'il est ouvert en mode écriture 'w', le fichier sera effacé s'il existe déjà.
Si le nom de fichier passé à open() n'existe pas, le mode écriture et le mode ajout créeront un nouveau fichier vide . Après avoir lu ou écrit un fichier, appelez la méthode close() avant que le fichier puisse être rouvert.
Python ne peut écrire des chaînes que dans des fichiers texte. Pour stocker des données numériques dans un fichier texte, vous devez utiliser la fonction str pour les convertir au format chaîne.
|
Tout d'abord, nous ouvrons bacon.txt en mode écriture. Puisque bacon.txt n’existe pas encore, Python en crée un. Appelez write() sur le fichier ouvert et transmettez le paramètre de chaîne 'Hello world! n' à write(), écrivez la chaîne dans le fichier et renvoyez le nombre de caractères écrits, y compris les nouvelles lignes. Fermez ensuite le fichier.
Pour ajouter du texte au contenu existant du fichier, plutôt que de remplacer la chaîne que nous venons d'écrire, nous ouvrons le fichier en mode ajout. Écrivez « Le bacon n'est pas un légume » dans le fichier et fermez-le. Enfin, pour imprimer le contenu du fichier à l'écran, nous ouvrons le fichier dans le mode de lecture par défaut, appelons read(), enregistrons le contenu résultant dans content, fermons le fichier et imprimons le contenu.
Veuillez noter que la méthode write() n'ajoute pas automatiquement un caractère de nouvelle ligne à la fin de la chaîne comme le fait la fonction print(). Vous devez ajouter ce personnage vous-même.
Utilisez le module étagère pour enregistrer les variables
À l'aide du module shelve, vous pouvez enregistrer les variables des programmes Python dans des fichiers étagère binaires. De cette façon, le programme peut récupérer les données des variables du disque dur. Le module shelve vous permet d'ajouter des fonctionnalités "enregistrer" et "ouvrir" à votre programme. Par exemple, si vous exécutez un programme et entrez certains paramètres de configuration, vous pouvez enregistrer ces paramètres dans un fichier étagère et demander au programme de les charger lors de sa prochaine exécution.
>>>shelfFile = shelve.open('mesdonnées') >>> chats = ['Zophie', 'Pooka', 'Simon']
>>> ShelfFile['chats'] = chats
|
Ces fichiers binaires contiennent les données stockées dans l'étagère. Le format de ces binaires n'a pas d'importance, il vous suffit de savoir ce que fait le module shelve, pas comment il le fait. Ce module vous évite de vous soucier de sauvegarder les données de votre programme dans un fichier. Votre programme pourra ensuite utiliser le module shelve pour rouvrir ces fichiers et récupérer les données. Les valeurs des étagères ne doivent pas nécessairement être ouvertes en mode lecture ou écriture car elles peuvent être lues ou écrites une fois ouvertes.
>>> ShelfFile = shelve.open('mesdonnées')>>> tapez(étagèreFichier)>>> ShelfFile['chats'] ['Zophie', 'Pooka', 'Simon']
|
>>> ShelfFile = shelve.open('mesdonnées') >>>liste(shelfFile.keys()) ['chats'] >>>liste(shelfFile.values()) [['Zophie', 'Pooka', 'Simon']] >>>étagèreFile.close() |
>>> importer le système d'exploitation >>> os.makedirs('C:\delicious\walnut\waffles') |
Cela créera non seulement le dossier C:delicious, mais créera également le dossier Walnut sous C:delicious et le dossier Waffles dans C:deliciouswalnut. Autrement dit, os.makedirs() créera tous les dossiers intermédiaires nécessaires afin de garantir que les chemins d'accès complets existent.
10.3.2 module os.path
Le module os.path contient de nombreuses fonctions utiles liées aux noms de fichiers et aux chemins de fichiers.
1. Afficher la taille du fichier et le contenu du dossier
- Une fois que vous avez un moyen de gérer les chemins de fichiers, vous pouvez commencer à collecter des informations sur des fichiers et des dossiers spécifiques. Le module os.path fournit des fonctions permettant d'afficher le nombre d'octets d'un fichier ainsi que les fichiers et sous-dossiers d'un dossier donné.
- L'appel de os.path.getsize(path) renverra le nombre d'octets du fichier dans le paramètre path.
- L'appel de os.listdir(path) renverra une liste de chaînes de noms de fichiers contenant chaque fichier dans le paramètre path (notez que cette fonction est dans le module os, pas os.path).
- Utilisez os.path.join() pour connecter le nom du dossier et le nom du fichier actuel.
2. Vérifier la validité du chemin
- Si le chemin que vous fournissez n'existe pas, de nombreuses fonctions Python planteront et signaleront une erreur. Le module os.path fournit des fonctions permettant de détecter si un chemin donné existe et s'il s'agit d'un fichier ou d'un dossier.
- Si le fichier ou le dossier pointé par le paramètre path existe, l'appel de os.path.exists(path) renverra True, sinon il renverra False.
- Si le paramètre path existe et est un fichier, l'appel de os.path.isfile(path) renverra True, sinon il renverra False.
- Si le paramètre path existe et est un dossier, appeler os.path.isdir(path) renverra True, sinon il renverra False.
10.4 Fichiers organisationnels
10.4.1 module Shutil
Le module Shutil (ou outil Shell) contient des fonctions qui vous permettent de copier, déplacer, renommer et supprimer des fichiers dans des programmes Python. Pour utiliser les fonctions Shutil, vous devez d'abord importer Shutil.
10.4.1.1 Copier des fichiers et des dossiers
Le module Shutil fournit des fonctions pour copier des fichiers et des dossiers entiers.
1. Appelez Shutil.copy(source, destination) pour copier le fichier du chemin source vers le dossier du chemin de destination (la source et la destination sont toutes deux des chaînes).
2. Si la destination est un nom de fichier, il sera utilisé comme nouveau nom du fichier copié. Cette fonction renvoie une chaîne représentant le chemin d'accès au fichier en cours de copie.
>>>os.chdir('C:\')>>>shutil.copy('C:\spam.txt','C:\delicious') 'C:\delicious\spam.txt' >>>shutil.copy('eggs.txt', 'C:\delicious\eggs2.txt')'C:\delicious\eggs2.txt'
|
Appelezshutil.move(source, destination) pour déplacer le dossier du chemin source vers le chemin de destination et renvoyer la chaîne du chemin absolu du nouvel emplacement.
Si la destination pointe vers un dossier, le fichier source sera déplacé vers la destination et le nom du fichier d'origine sera conservé. Exception 10.5
Python utilise des objets spéciaux appelés exceptions pour gérer les erreurs qui se produisent lors de l'exécution du programme.Python crée une exception chaque fois qu'une erreur se produit.
S'il est écrit pour gérer les exceptions, le programme continuera, sinon le programme s'arrêtera et renverra un rétrolien contenant un rapport sur l'exception.
Les exceptions sont gérées à l'aide du
bloc de code try-sauf
. Effectuez l'opération spécifiée et dites à Python quoi faire. À l'aide du
def my_abs(x): if not isinstance(x, (int, float)): raise TypeError('bad operand type') if x >= 0: return x else: return -x ValueError异常
|
def mes_abs(x): sinon isinstance(x, (int, float)): raise TypeError('mauvais type d'opérande') si x >= 0 : retourner x autre : retour -x ValueError |
3. Enregistrer les erreurs
Le module de journalisation intégré de Python peut facilement enregistrer les informations sur les erreurs.
4. Lancez une erreur
Si vous souhaitez générer une erreur, vous pouvez d'abord définir une classe d'erreur selon vos besoins, sélectionner la relation d'héritage, puis utiliser l'instruction raise pour générer une instance d'erreur.
10.6 Stockage des données
Utilisez le module json pour stocker les données. Le format des données Json n'est pas spécifique à Python et peut être partagé avec des personnes utilisant d'autres langages de programmation. C'est un format léger, utile et facile à apprendre.
Le format JSON (JavaScript Object Notation) a été initialement développé pour JavaScript, mais est depuis devenu un format courant utilisé dans de nombreux langages.
Utilisez json.dump() et json.load()
json.dump() accepte deux paramètres réels, les données à stocker et l'objet fichier qui peut être utilisé pour stocker les données.
- Un programme pour stocker un ensemble de nombres json.dump()
- Programme pour lire les nombres en mémoire json.load()
10.6.2 Sauvegarde et lecture des données générées par l'utilisateur
json.dump et json.load sont utilisés ensemble pour stocker et charger des données respectivement.
10.6.3 Refactorisation
1. Le code fonctionne correctement, mais il peut être encore amélioré - divisez le code en une série de fonctions qui effectuent un travail spécifique. Ce processus est appelé reconstruction. La refactorisation rend le code plus clair, plus facile à comprendre et plus facile à étendre.
2. Mettez l'essentiel de la logique dans une ou plusieurs fonctions.
10.6.4 Résumé
1. J'ai appris à lire des fichiers, à lire le fichier entier et à lire une ligne, à exploiter des fichiers, à ouvrir, en mode lecture, en mode écriture, en mode ajout, en mode lecture et écriture.
2. Comment utiliser le bloc de code try-sauf-else pour la gestion des exceptions. Type d'exception. Manipulez les données, enregistrez et lisez les données, utilisez le module json, utilisez le dump et le chargement, apprenez à refactoriser le code.
10.7 Débogage
1. Affirmation
Partout où print() est utilisé pour faciliter la visualisation, l'assertion peut être utilisée à la place.
n = int(s) affirme n != 0, 'n vaut zéro !' retour 10/n def main() : foo('0') |
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

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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

PHP est principalement la programmation procédurale, mais prend également en charge la programmation orientée objet (POO); Python prend en charge une variété de paradigmes, y compris la POO, la programmation fonctionnelle et procédurale. PHP convient au développement Web, et Python convient à une variété d'applications telles que l'analyse des données et l'apprentissage automatique.

PHP convient au développement Web et au prototypage rapide, et Python convient à la science des données et à l'apprentissage automatique. 1.Php est utilisé pour le développement Web dynamique, avec une syntaxe simple et adapté pour un développement rapide. 2. Python a une syntaxe concise, convient à plusieurs champs et a un écosystème de bibliothèque solide.

Python convient plus aux débutants, avec une courbe d'apprentissage en douceur et une syntaxe concise; JavaScript convient au développement frontal, avec une courbe d'apprentissage abrupte et une syntaxe flexible. 1. La syntaxe Python est intuitive et adaptée à la science des données et au développement back-end. 2. JavaScript est flexible et largement utilisé dans la programmation frontale et côté serveur.

VS Code peut fonctionner sur Windows 8, mais l'expérience peut ne pas être excellente. Assurez-vous d'abord que le système a été mis à jour sur le dernier correctif, puis téléchargez le package d'installation VS Code qui correspond à l'architecture du système et l'installez comme invité. Après l'installation, sachez que certaines extensions peuvent être incompatibles avec Windows 8 et doivent rechercher des extensions alternatives ou utiliser de nouveaux systèmes Windows dans une machine virtuelle. Installez les extensions nécessaires pour vérifier si elles fonctionnent correctement. Bien que le code VS soit possible sur Windows 8, il est recommandé de passer à un système Windows plus récent pour une meilleure expérience de développement et une meilleure sécurité.

PHP est originaire en 1994 et a été développé par Rasmuslerdorf. Il a été utilisé à l'origine pour suivre les visiteurs du site Web et a progressivement évolué en un langage de script côté serveur et a été largement utilisé dans le développement Web. Python a été développé par Guidovan Rossum à la fin des années 1980 et a été publié pour la première fois en 1991. Il met l'accent sur la lisibilité et la simplicité du code, et convient à l'informatique scientifique, à l'analyse des données et à d'autres domaines.

VS Code peut être utilisé pour écrire Python et fournit de nombreuses fonctionnalités qui en font un outil idéal pour développer des applications Python. Il permet aux utilisateurs de: installer des extensions Python pour obtenir des fonctions telles que la réalisation du code, la mise en évidence de la syntaxe et le débogage. Utilisez le débogueur pour suivre le code étape par étape, trouver et corriger les erreurs. Intégrez Git pour le contrôle de version. Utilisez des outils de mise en forme de code pour maintenir la cohérence du code. Utilisez l'outil de liaison pour repérer les problèmes potentiels à l'avance.

Dans VS Code, vous pouvez exécuter le programme dans le terminal via les étapes suivantes: Préparez le code et ouvrez le terminal intégré pour vous assurer que le répertoire de code est cohérent avec le répertoire de travail du terminal. Sélectionnez la commande Run en fonction du langage de programmation (tel que Python de Python your_file_name.py) pour vérifier s'il s'exécute avec succès et résoudre les erreurs. Utilisez le débogueur pour améliorer l'efficacité du débogage.

Les extensions de code vs posent des risques malveillants, tels que la cachette de code malveillant, l'exploitation des vulnérabilités et la masturbation comme des extensions légitimes. Les méthodes pour identifier les extensions malveillantes comprennent: la vérification des éditeurs, la lecture des commentaires, la vérification du code et l'installation avec prudence. Les mesures de sécurité comprennent également: la sensibilisation à la sécurité, les bonnes habitudes, les mises à jour régulières et les logiciels antivirus.
