Table des matières
1. Utiliser des variables locales
2. Réduisez le nombre d'appels de fonction
3. Utilisez le mappage au lieu de la recherche conditionnelle
4. Itérer directement les éléments de séquence
5. Utilisez des expressions génératrices pour remplacer la compréhension de liste
6. Compilez d'abord, puis appelez
7. Habitudes de programmation du module
Maison développement back-end Tutoriel Python Sept habitudes pour améliorer les performances des programmes Python

Sept habitudes pour améliorer les performances des programmes Python

Apr 16, 2023 pm 06:01 PM
python 程序性能

Sept habitudes pour améliorer les performances des programmes Python

1. Utiliser des variables locales

Essayez d'utiliser des variables locales au lieu de variables globales : pour faciliter la maintenance, améliorer les performances et économiser de la mémoire.

Remplacez les variables dans l'espace de noms du module par des variables locales, par exemple ls = os.linesep. D'une part, cela peut améliorer les performances du programme et accélérer les recherches de variables locales ; d'autre part, des identifiants courts peuvent être utilisés pour remplacer de longues variables de module afin d'améliorer la lisibilité.

2. Réduisez le nombre d'appels de fonction

Lors du jugement du type d'objet, il est préférable d'utiliser isinstance(), suivi de l'identité du type d'objet (id()) et la valeur de l'objet (type()) est la dernier.

#判断变量num是否为整数类型
type(num) == type(0) #调用三次函数
type(num) is type(0) #身份比较
isinstance(num,(int)) #调用一次函数
Copier après la connexion

Ne mettez pas le contenu des opérations répétées comme paramètres dans des conditions de boucle pour éviter les opérations répétées.

#每次循环都需要重新执行len(a)
while i < len(a):
statement
#len(a)仅执行一次
m = len(a)
while i < m:
statement
Copier après la connexion

Si vous devez utiliser une fonction ou un objet Y dans le module X, vous devez utiliser directement from X import Y au lieu d'importer X.Y. De cette façon, lors de l'utilisation de Y, une requête peut être réduite (l'interpréteur n'a pas besoin de trouver d'abord le module X puis de rechercher Y dans le dictionnaire du module X).

3. Utilisez le mappage au lieu de la recherche conditionnelle

La vitesse de recherche du mappage (comme dict, etc.) est beaucoup plus rapide que celle des instructions conditionnelles (comme if, etc.). Il n'y a pas non plus d'instruction select-case en Python.

#if查找
if a == 1:
b = 10
elif a == 2:
b = 20
...
#dict查找,性能更优
d = {1:10,2:20,...}
b = d[a]
Copier après la connexion

4. Itérer directement les éléments de séquence

Pour les séquences (str, liste, tuple, etc.), itérer directement les éléments de séquence est plus rapide que l'itération de l'index des éléments.

a = [1,2,3]
#迭代元素
for item in a:
print(item)
#迭代索引
for i in range(len(a)):
 print(a[i])
Copier après la connexion

5. Utilisez des expressions génératrices pour remplacer la compréhension de liste

La compréhension de liste (compréhension de liste) générera une liste entière, ce qui aura un effet négatif sur l'itération de grandes quantités de données.

L'expression génératrice ne crée pas réellement de liste, mais renvoie un générateur qui produit une valeur en cas de besoin (calcul paresseux), ce qui est plus convivial pour la mémoire.

#计算文件f的非空字符个数
#生成器表达式
l = sum([len(word) for line in f for word in line.split()])
#列表解析
l = sum(len(word) for line in f for word in line.split())
Copier après la connexion

6. Compilez d'abord, puis appelez

Lorsque vous utilisez les fonctions eval() et exec() pour exécuter du code, il est préférable d'appeler l'objet code (compilé à l'avance en bytecode via la fonction compile()) au lieu d'appeler str directement , ce qui peut éviter des processus de compilation répétés et améliorer les performances du programme.

La correspondance de modèle d'expression régulière est similaire. Il est également préférable de compiler le modèle d'expression régulière dans un objet regex (via la fonction re.complie()) avant d'effectuer la comparaison et la correspondance.

7. Habitudes de programmation du module

L'instruction Python de plus haut niveau (code sans indentation) dans le module sera exécutée lorsque le module est importé (qu'il soit vraiment nécessaire de l'exécuter). Par conséquent, vous devriez essayer de mettre tous les codes de fonction du module dans des fonctions, y compris les codes de fonction liés au programme principal, qui peuvent également être placés dans la fonction main(), et le programme principal lui-même appelle la fonction main(). .

Vous pouvez écrire du code de test dans la fonction main() du module. Dans le programme principal, vérifiez la valeur de name. S'il s'agit de « main » (indiquant que le module est exécuté directement), appelez la fonction main() et effectuez des tests s'il s'agit du nom du module (indiquant que le module est exécuté directement). module est appelé), aucun test ne sera effectué.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Quelle est la raison pour laquelle PS continue de montrer le chargement? Quelle est la raison pour laquelle PS continue de montrer le chargement? Apr 06, 2025 pm 06:39 PM

Les problèmes de «chargement» PS sont causés par des problèmes d'accès aux ressources ou de traitement: la vitesse de lecture du disque dur est lente ou mauvaise: utilisez Crystaldiskinfo pour vérifier la santé du disque dur et remplacer le disque dur problématique. Mémoire insuffisante: améliorez la mémoire pour répondre aux besoins de PS pour les images à haute résolution et le traitement complexe de couche. Les pilotes de la carte graphique sont obsolètes ou corrompues: mettez à jour les pilotes pour optimiser la communication entre le PS et la carte graphique. Les chemins de fichier sont trop longs ou les noms de fichiers ont des caractères spéciaux: utilisez des chemins courts et évitez les caractères spéciaux. Problème du PS: réinstaller ou réparer le programme d'installation PS.

Comment résoudre le problème du chargement lorsque PS est démarré? Comment résoudre le problème du chargement lorsque PS est démarré? Apr 06, 2025 pm 06:36 PM

Un PS est coincé sur le "chargement" lors du démarrage peut être causé par diverses raisons: désactiver les plugins corrompus ou conflictuels. Supprimer ou renommer un fichier de configuration corrompu. Fermez des programmes inutiles ou améliorez la mémoire pour éviter une mémoire insuffisante. Passez à un entraînement à semi-conducteurs pour accélérer la lecture du disque dur. Réinstaller PS pour réparer les fichiers système corrompus ou les problèmes de package d'installation. Afficher les informations d'erreur pendant le processus de démarrage de l'analyse du journal d'erreur.

Comment accélérer la vitesse de chargement de PS? Comment accélérer la vitesse de chargement de PS? Apr 06, 2025 pm 06:27 PM

La résolution du problème du démarrage lent Photoshop nécessite une approche à plusieurs volets, notamment: la mise à niveau du matériel (mémoire, lecteur à semi-conducteurs, CPU); des plug-ins désinstallés ou incompatibles; nettoyer régulièrement les déchets du système et des programmes de fond excessifs; clôture des programmes non pertinents avec prudence; Éviter d'ouvrir un grand nombre de fichiers pendant le démarrage.

Comment résoudre le problème du chargement lorsque le PS ouvre le fichier? Comment résoudre le problème du chargement lorsque le PS ouvre le fichier? Apr 06, 2025 pm 06:33 PM

Le bégaiement "Chargement" se produit lors de l'ouverture d'un fichier sur PS. Les raisons peuvent inclure: un fichier trop grand ou corrompu, une mémoire insuffisante, une vitesse du disque dur lente, des problèmes de pilote de carte graphique, des conflits de version PS ou du plug-in. Les solutions sont: vérifier la taille et l'intégrité du fichier, augmenter la mémoire, mettre à niveau le disque dur, mettre à jour le pilote de carte graphique, désinstaller ou désactiver les plug-ins suspects et réinstaller PS. Ce problème peut être résolu efficacement en vérifiant progressivement et en faisant bon usage des paramètres de performances PS et en développant de bonnes habitudes de gestion des fichiers.

Comment résoudre le problème du chargement lorsque PS montre toujours qu'il se charge? Comment résoudre le problème du chargement lorsque PS montre toujours qu'il se charge? Apr 06, 2025 pm 06:30 PM

La carte PS est "Chargement"? Les solutions comprennent: la vérification de la configuration de l'ordinateur (mémoire, disque dur, processeur), nettoyage de la fragmentation du disque dur, mise à jour du pilote de carte graphique, ajustement des paramètres PS, réinstaller PS et développer de bonnes habitudes de programmation.

Comment les plumes PS contrôlent-elles la douceur de la transition? Comment les plumes PS contrôlent-elles la douceur de la transition? Apr 06, 2025 pm 07:33 PM

La clé du contrôle des plumes est de comprendre sa nature progressive. Le PS lui-même ne fournit pas la possibilité de contrôler directement la courbe de gradient, mais vous pouvez ajuster de manière flexible le rayon et la douceur du gradient par plusieurs plumes, des masques correspondants et des sélections fines pour obtenir un effet de transition naturel.

Comment utiliser MySQL après l'installation Comment utiliser MySQL après l'installation Apr 08, 2025 am 11:48 AM

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

Que dois-je faire si la carte PS est dans l'interface de chargement? Que dois-je faire si la carte PS est dans l'interface de chargement? Apr 06, 2025 pm 06:54 PM

L'interface de chargement de la carte PS peut être causée par le logiciel lui-même (corruption de fichiers ou conflit de plug-in), l'environnement système (corruption du pilote ou des fichiers système en raison), ou matériel (corruption du disque dur ou défaillance du bâton de mémoire). Vérifiez d'abord si les ressources informatiques sont suffisantes, fermez le programme d'arrière-plan et publiez la mémoire et les ressources CPU. Correction de l'installation de PS ou vérifiez les problèmes de compatibilité pour les plug-ins. Mettre à jour ou tomber la version PS. Vérifiez le pilote de la carte graphique et mettez-le à jour et exécutez la vérification du fichier système. Si vous résumez les problèmes ci-dessus, vous pouvez essayer la détection du disque dur et les tests de mémoire.

See all articles