Julia, exercice : trouver un mot écrit correctement à une lettre près.
par
, 10/10/2021 à 22h36 (934 Affichages)
- Le 2021-10-10, j'utilise Julia_1.6.1 sur VS_Code_1.61.0. Ordinateur : W10 Pro, i9-10900F.
- Préalables, mes billets précédents sur Julia sont supposés connus et assimilés.
Cette question a été posée sur un forum Python
En Julia, nous disposons du paquet StringDistances.jl
La fonction findnearest permet de trouver le mot le plus proche ayant un score supérieur ou égal à la variable min_score.
Notre fonction correcteur permet de chercher l'orthographe exacte de plusieurs mots. Si le mot n'existe pas ou si aucun mot ne dépasse le min_score, la fonction findnearest renvoie "nothing"
Code Julia : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 using Base, StringDistances # https://github.com/matthieugomez/StringDistances.jl function correcteur(mots, liste) for mot in mots r = StringDistances.findnearest(mot, liste, Levenshtein(), min_score = 0.65) @show r[1] end end function main() liste_référence = ["chien", "chat", "taux", "tour", "train", "voiture", "bonjour", "bonsoir", "merci", "aaaa", "adaf", "acae"] mots_cherché = ["taur", "axae", "bonvour", "bonsoir", "juste"] correcteur(mots_cherché, liste_référence) return #= r[1] = "tour" r[1] = "acae" r[1] = "bonjour" r[1] = "bonsoir" r[1] = nothing 0.000585 seconds (172 allocations: 13.781 KiB) =# end @time main()
Licence Creative Commons Attribution 2.0 Belgique