Maison >développement back-end >Tutoriel Python >Quelles sont les bibliothèques Python courantes ?
difflib est un module Python axé sur la comparaison d'ensembles de données (en particulier les chaînes). Pour avoir une idée concrète de quelques choses que vous pouvez faire avec ce module, examinons certaines de ses fonctions les plus courantes.
SequenceMatcher est une fonction qui compare deux chaînes et renvoie des données en fonction de leur similarité. En utilisant ratio() nous pourrons quantifier cette similarité en termes de ratio/pourcentage.
Syntaxe :
SequenceMatcher(None, string1, string2)
L'exemple simple suivant montre ce que fait cette fonction :
from difflib import SequenceMatcher phrase1 = "Tandrew loves Trees." phrase2 = "Tandrew loves to mount Trees." similarity = SequenceMatcher(None, phrase1, phrase2) print(similarity.ratio()) # Output: 0.8163265306122449
Continuer Ensuite est get_close_matches, qui renvoie la correspondance la plus proche de la chaîne transmise en argument.
Syntaxe :
get_close_matches(word, possibilities, result_limit, min_similarity)
Voici une explication de ces paramètres potentiellement déroutants :
word est le mot cible que la fonction examinera.
possibilités est un tableau contenant les correspondances que la fonction recherchera et trouvera la correspondance la plus proche.
result_limit est la limite du nombre de résultats renvoyés (facultatif).
min_similarity est la similarité minimale que deux mots doivent avoir pour être considérés comme une valeur de retour par la fonction (facultatif).
Voici un exemple de son utilisation :
from difflib import get_close_matches word = 'Tandrew' possibilities = ['Andrew', 'Teresa', 'Kairu', 'Janderson', 'Drew'] print(get_close_matches(word, possibilities)) # Output: ['Andrew']
De plus, il existe plusieurs autres méthodes et classes que vous pouvez consulter et qui appartiennent à Difflib : unified_diff, Differ et diff_bytes
sched est un module utile centré sur la planification d'événements qui fonctionne sur plusieurs plates-formes, contrairement aux outils comme le planificateur de tâches sous Windows. La plupart du temps, lorsque vous utiliserez ce module, vous utiliserez la classe schedular.
Le module de temps le plus courant est généralement utilisé avec sched car ils traitent tous deux des concepts de temps et de planification.
Créer une instance planifiée :
schedular_name = sched.schedular(time.time, time.sleep)
Différentes méthodes peuvent être appelées à partir de cette instance.
Lorsque run() est appelé, les événements/entrées du planificateur seront appelés dans l'ordre. Cette fonction apparaît généralement à la fin du programme une fois l'événement programmé. De plus, recherchez sur le compte public Linux pour savoir comment répondre « git books » en arrière-plan et obtenez un coffret cadeau surprise.
enterabs() est une fonction qui ajoute essentiellement des événements à la file d'attente interne du planificateur. Il reçoit plusieurs paramètres dans l'ordre suivant :
Voici un exemple de la façon d'utiliser ces deux fonctions ensemble : #🎜 🎜#
import sched import time def event_notification(event_name): print(event_name + " has started") my_schedular = sched.scheduler(time.time, time.sleep) closing_ceremony = my_schedular.enterabs(time.time(), 1, event_notification, ("The Closing Ceremony", )) my_schedular.run() # Output: The Closing Ceremony has startedIl existe également plusieurs fonctions qui étendent l'utilisation du module sched : Cancel(), Enter() et Empty(). 3. binaasciibinaascii est un module de conversion entre binaire et ASCII. b2a_base64 est une méthode du module binaascii qui convertit les données base64 en données binaires. Voici un exemple de cette approche :
import base64 import binascii msg = "Tandrew" encoded = msg.encode('ascii') base64_msg = base64.b64encode(encoded) decode = binascii.a2b_base64(base64_msg) print(decode) # Output: b'Tandrew'Ce code doit être explicite. En termes simples, cela implique l'encodage, la conversion en base64 et la reconversion en binaire à l'aide de la méthode b2a_base64. Voici quelques autres fonctions qui appartiennent au module binaascii : a2b_qp(), b2a_qp() et a2b_uu(). 4. ttytty est un module contenant plusieurs fonctions utilitaires qui peuvent être utilisées pour gérer les appareils tty. Voici ses deux fonctions : setraw() change le mode du descripteur de fichier dans son argument (fd) en raw. setcbreak() change le mode du descripteur de fichier dans son argument (fd) en cbreak. Ce module n'est disponible que sous Unix en raison de la nécessité d'utiliser le module termios, par exemple en spécifiant le deuxième paramètre (when=termios.TCSAFLUSH) dans les deux fonctions ci-dessus. 5. lowrefweakref est un module permettant de créer des références faibles à des objets en Python. Une référence faible est une référence qui ne protège pas un objet donné contre la collecte par le mécanisme de garbage collection. Voici deux fonctions liées à ce module :
import weakref class Book: def print_type(self): print("Book") lotr = Book num = 1 rcount_lotr = str(weakref.getweakrefcount(lotr)) rcount_num = str(weakref.getweakrefcount(num)) rlist_lotr = str(weakref.getweakrefs(lotr)) rlist_num = str(weakref.getweakrefs(num)) print("number of weakrefs of 'lotr': " + rcount_lotr) print("number of weakrefs of 'num': " + rcount_num) print("Weakrefs of 'lotr': " + rlist_lotr) print("Weakrefs of 'num': " + rlist_num) # Output: # number of weakrefs of 'lotr': 1 # number of weakrefs of 'num': 0 # Weakrefs of 'lotr': [] # Weakrefs of 'num': []Output Nous pouvons voir son effet à partir de la valeur de retour de la fonction de sortie. Puisque num n'a pas de références faibles, le tableau renvoyé par getweakrefs() est vide. Extension : Reprise du travail privéVoici quelques autres fonctions liées au module lowref : ref(), proxy() et _remove_dead_weakref().
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!