Wie der Titel schon sagt Ich habe versucht, es als Anti-Spam-Maßnahme zu machen Eine Funktion, die True zurückgibt, wenn sie die angegebene Anzahl von Zeichen überlappt Spaghetti-Quellcode vergib mir Sie können es möglicherweise nicht so oft verwenden w Bearbeiten Sie nach dem Einschalten, um eine neue zu erstellen
Es fühlt sich an, als würde man Charakter für Charakter herausnehmen und zu dem hinzufügen, der es vergleicht, und prüfen, ob es existiert
def similer(b,a,m):
al = list(a)
cc = ""
cu = 0
co = 0
cuo = 0
for c in al:
co += 1
for ck in al:
cuo += 1
if cuo-1 < co-1:
continue
cc = cc + ck
cu += 1
if cu == m:
break
if cu == m:
if cc in b:
return True
cc = ""
cuo = 0
cu = 0
return False
#Spaghetti-Quellcode w
#Vielleicht kann es kompakter gemacht werden, aber bitte vergib mir
#Es war ein Ärger
Dieser ist überwiegend leicht zu verstehen und kompakt Ich habe etwas gelernt Vielen Dank
def similer(b,a,m):
return any(a[i:i+m] in b for i in range(len(a) - m))
#Nehmen Sie es mit einer Scheibe und bestätigen Sie es und kehren Sie mit einer zurück
#Es wird eine großartige Studie sein
similer (zu prüfendes Zeichen, zu prüfendes Zeichen, Wortlänge, um zu prüfen, ob es abgenutzt ist)
Kann in verwendet werden.
Eine Spam-Nachricht, die eine Nachricht mit zufälligen Zeichen sendet, die ein bestimmter Chat war.
True
ist zurück.
b = """Hallo. Dies ist Flage Chat
嘮"""
a = """Hallo. Dies ist Flage Chat
蕻"""
print(similer(b,a,5))
# True
False ist zurück, weil es kein Spam ist.
b = """i-FILTER falsch positiv w"""
a = """Es wurde vor langer Zeit eingesetzt"""
print(similer(b,a,5))
# False
Hinweis! Wenn Sie es in einer Chat-App verwenden, überprüfen Sie es mehrmals oder wiederholt. Wenn Sie es mit dem Namen einer Person senden, wird es als Spam falsch eingeschätzt. Manchmal können kurze Sätze nicht erkannt werden. Wiederholen wir dies, indem wir das letzte Argument der Funktion der Reihe nach erhöhen.
Wenn Sie so etwas vergleichen, wird es unter dem Namen einer Person namens tasuren wahr sein.
b = """Hat Tasuren es getan?"""
a = """Weil Tassuren Hugahuga gemacht haben"""
print(similer(b,a,5))
# True
Damit Wenn "True" fünfmal hintereinander als Spam zurückgegeben wird, wenn eine Nachricht fünfmal gesendet wird Es ist Spam! Es ist besser, wenn Sie das Gefühl haben, es Sie wissen zu lassen.
Es ist das Ende!
Recommended Posts