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 started
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'
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': []
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!