[PYTHON] 100 Sprachverarbeitungsklopfen 06 ~ 09

* 06. Set *

Suchen Sie den in "paraparaparadise" und "Absatz" enthaltenen Satz von Zeichen-Bi-Gramm als X bzw. Y und suchen Sie den Summensatz, den Produktsatz und den Differenzsatz von X bzw. Y. Finden Sie außerdem heraus, ob das Bi-Gramm in X und Y enthalten ist.

nlp06.py


#!usr/bin/env python
#coding:UTF-8
def char_ngram(n,seq):
    li = []
    for i in range(len(seq)):
        li.append(seq[i:i+n])
    return li
                        
seq1 = "paraparaparadise"
seq2 = "paragraph"

X = char_ngram(2,seq1)
Y = char_ngram(2,seq2)
Z = ['se']

logical_sum = set(X).union(Y)
logical_product = set(X).intersection(Y)
logical_difference = set(X).symmetric_difference(Y)
print "Summensatz:",
print logical_sum
print "Produktset:",
print logical_product
print "Differenz gesetzt:",
print logical_difference
print "bi genannt se-Ist Gramm in X enthalten?",
print('se' in X)
print "bi genannt se-Ist Gramm in Y enthalten?",
print('se' in Y)

Ausführungsergebnis Summensatz: Satz (['e', 'ad', 'ag', 'di', 'h', 'is', 'ap', 'pa', 'ra', 'ph', 'ar', 'se', 'gr']) Produktmenge: Menge (['ap', 'pa', 'ar', 'ra']) Differenz gesetzt: gesetzt (['e', 'gr', 'ag', 'di', 'h', 'ist', 'ph', 'se', 'ad']) Ist das Bi-Gramm namens se in X enthalten? Richtig Ist das Bi-Gramm namens se in Y enthalten? Falsch

* 07. Anweisungserstellung nach Vorlage *

Implementieren Sie eine Funktion, die die Argumente x, y, z verwendet und die Zeichenfolge "y bei x ist z" zurückgibt. Setzen Sie außerdem x = 12, y = "Temperatur", z = 22,4 und überprüfen Sie das Ausführungsergebnis.

nlp07.py


def combine(x,y,z):
    s1 = "von Zeit"
    s2 = "Ist"
    seq = str(x)+s1+str(y)+s2+str(z)
    return seq
x = 12
y = "Temperatur"
z = 22.4
print combine(x,y,z)

Ausführungsergebnis Die Temperatur um 12:00 Uhr beträgt 22,4

* 08. Kryptographie *

Implementieren Sie die Funktionsverschlüsselung, die jedes Zeichen der angegebenen Zeichenfolge gemäß den folgenden Spezifikationen konvertiert. Durch Kleinbuchstaben ersetzen (219 - Zeichencode) Geben Sie andere Zeichen so aus, wie sie sind Verwenden Sie diese Funktion, um englische Nachrichten zu verschlüsseln / entschlüsseln.

nlp08.py


#!usr/bin/env python
#coding:UTF-8
def cipher(str):
    enc = ""
    for char in str:
        if 97 <= ord(char)<= 123:
            enc +=chr(219-ord(char))
        else:
            enc +=char
    return enc
str = "Machine Learning"
print cipher(str)#Verschlüsselung
print cipher(cipher(str))#Verbund

Ausführungsergebnis Mzxsrmv Lvzimrmt Machine Learning

09. Typoglycemia Erstellen Sie ein Programm, das die Reihenfolge der anderen Zeichen zufällig neu anordnet, wobei das erste und das letzte Zeichen jedes Wortes für die Wortfolge durch Leerzeichen getrennt bleiben. Wörter mit einer Länge von 4 oder weniger werden jedoch nicht neu angeordnet. Geben Sie einen geeigneten englischen Satz ein (zum Beispiel: "Ich konnte nicht glauben, dass ich tatsächlich verstehen konnte, was ich las: die phänomenale Kraft des menschlichen Geistes.") Und überprüfen Sie das Ausführungsergebnis.

nlp09.py


#!usr/bin/env python
#coding:UTF-8
#Typoglycemia
import random
def Typo(word): 
    if len(word)>4:
        wordli = list(word[1:-1])
        random.shuffle(wordli)
        neword = word[0] + ''.join(wordli)+ word[-1]
        return neword
    else:
        return word
   
str="I couldn't believe that I could actually understand what I was reading : the phenomenal power of the human mind."

typostr=""
for word in str.replace("."," .").split():
    typostr +=" "+Typo(word)
print(typostr)

Ausführungsergebnis I clundo't bivelee that I colud allctuay uedtnasrnd what I was riednag : the phnoneeaml peowr of the hmaun mind .

Es sollte eine bessere Möglichkeit geben, den Teil typostr + =" "+ Typo (word) zu schreiben.

Recommended Posts

100 Sprachverarbeitungsklopfen 03 ~ 05
100 Sprachverarbeitungsklopfen (2020): 40
100 Sprachverarbeitungsklopfen (2020): 32
100 Sprachverarbeitungsklopfen (2020): 35
100 Sprachverarbeitungsklopfen (2020): 47
100 Sprachverarbeitungsklopfen (2020): 39
100 Sprachverarbeitungsklopfen (2020): 22
100 Sprachverarbeitungsklopfen (2020): 42
100 Sprachverarbeitungsklopfen (2020): 29
100 Sprachverarbeitungsklopfen (2020): 49
100 Sprachverarbeitungsklopfen 06 ~ 09
100 Sprachverarbeitungsklopfen (2020): 43
100 Sprachverarbeitungsklopfen (2020): 24
100 Sprachverarbeitungsklopfen (2020): 45
100 Sprachverarbeitungsklopfen (2020): 10-19
100 Sprachverarbeitungsklopfen (2020): 30
100 Sprachverarbeitungsklopfen (2020): 00-09
100 Sprachverarbeitungsklopfen (2020): 31
100 Sprachverarbeitungsklopfen (2020): 48
100 Sprachverarbeitungsklopfen (2020): 44
100 Sprachverarbeitungsklopfen (2020): 41
100 Sprachverarbeitungsklopfen (2020): 37
100 Sprachverarbeitungsklopfen (2020): 25
100 Sprachverarbeitungsklopfen (2020): 23
100 Sprachverarbeitungsklopfen (2020): 33
100 Sprachverarbeitungsklopfen (2020): 20
100 Sprachverarbeitungsklopfen (2020): 27
100 Sprachverarbeitungsklopfen (2020): 46
100 Sprachverarbeitungsklopfen (2020): 21
100 Sprachverarbeitungsklopfen (2020): 36
100 Amateur-Sprachverarbeitungsklopfen: 41
100 Amateur-Sprachverarbeitungsklopfen: 71
100 Amateur-Sprachverarbeitungsklopfen: 56
100 Amateur-Sprachverarbeitungsklopfen: 24
100 Amateur-Sprachverarbeitungsklopfen: 59
100 Amateur-Sprachverarbeitungsklopfen: 70
100 Amateur-Sprachverarbeitungsklopfen: 60
100 Amateur-Sprachverarbeitungsklopfen: 92
100 Amateur-Sprachverarbeitungsklopfen: 30
100 Amateur-Sprachverarbeitungsklopfen: 06
100 Amateur-Sprachverarbeitungsklopfen: 84
100 Amateur-Sprachverarbeitungsklopfen: 81
100 Amateur-Sprachverarbeitungsklopfen: 33
100 Amateur-Sprachverarbeitungsklopfen: 40
100 Amateur-Sprachverarbeitungsklopfen: 45
100 Amateur-Sprachverarbeitungsklopfen: 43
100 Amateur-Sprachverarbeitungsklopfen: 55
100 Amateur-Sprachverarbeitungsklopfen: 22
100 Amateur-Sprachverarbeitungsklopfen: 61
100 Amateur-Sprachverarbeitungsklopfen: 94
100 Amateur-Sprachverarbeitungsklopfen: 54
100 Amateur-Sprachverarbeitungsklopfen: 04
100 Amateur-Sprachverarbeitungsklopfen: 63
100 Amateur-Sprachverarbeitungsklopfen: 12
100 Amateur-Sprachverarbeitungsklopfen: 14
100 Amateur-Sprachverarbeitungsklopfen: 08
100 Amateur-Sprachverarbeitungsklopfen: 42
100 Sprachverarbeitungsklopfen ~ Kapitel 1
100 Amateur-Sprachverarbeitungsklopfen: 19
100 Amateur-Sprachverarbeitungsklopfen: 73
100 Amateur-Sprachverarbeitungsklopfen: 75