100 Sprachverarbeitungsklopfen http://www.cl.ecei.tohoku.ac.jp/nlp100/ Von Kapitel 1 00 bis 09
Holen Sie sich eine Zeichenfolge, in der die Zeichen der Zeichenfolge "betont" umgekehrt angeordnet sind (vom Ende bis zum Anfang).
python
print('stressed'[::-1])
Nehmen Sie das 1., 3., 5. und 7. Zeichen der Zeichenkette "Patatokukashi" heraus und erhalten Sie die verkettete Zeichenkette.
python
print('Patatoku Kashii'[::2])
Erhalten Sie die Zeichenkette "Patatokukashi", indem Sie die Zeichen "Pattocar" + "Tax" von Anfang an abwechselnd verbinden.
python
print(''.join(x+y for x, y in zip('Pat Auto', 'Taxi')))
Teilen Sie den Satz „Jetzt brauche ich nach den schweren Vorlesungen über Quantenmechanik einen Alkoholiker auf.“ In Wörter auf und erstellen Sie eine Liste mit der Anzahl der (alphabetischen) Zeichen in jedem Wort in der Reihenfolge ihres Auftretens.
python
import re
s = 'Now I need a drink, alcoholic of course, after the heavy \
lectures involving quantum mechanics.'
s = re.sub(r'[^A-Za-z\ ]+', '', s)
print([len(x) for x in s.split()])
Was du kommentiert hast
s = 'Now I need a drink, alcoholic of course, after the heavy \
lectures involving quantum mechanics.'
print([len(w.rstrip(',.')) for w in s.split()])
Was du kommentiert hast
s = 'Now I need a drink, alcoholic of course, after the heavy \
lectures involving quantum mechanics.'
print([sum(c.isalpha() for c in w) for w in s.split()])
Teilen Sie den Satz "Hi He Lied, weil Bor Fluor nicht oxidieren konnte. Neue Nationen könnten auch die Friedenssicherheitsklausel unterzeichnen. Arthur King Can." In die Wörter 1, 5, 6, 7, 8, 9, 15, 16, 19 auf Das erste Wort ist das erste Zeichen, und die anderen Wörter sind die ersten beiden Zeichen. Erstelle es.
python
import re
s = 'Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might \
Also Sign Peace Security Clause. Arthur King Can.'
s = re.sub(r'[^A-Za-z\ ]+', '', s)
print(
{x[:1] if i in [1, 5, 6, 7, 8, 9, 15, 16, 19] else x[:2]: i+1 \
for i, x in enumerate(s.split(' '), 1)}
)
Was du kommentiert hast
s = 'Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might \
Also Sign Peace Security Clause. Arthur King Can.'
print({w[:2-(i in (1,5,6,7,8,9,15,16,19))]:i for i,w in enumerate(s.split(),1)})
python
def n(s):
return [s[i:i+2] for i in range(len(s) if len(s) % 2 == 0 else len(s)-1)]
s = 'I am an NLPer'
print(n(s))
print(n(s.split(' ')))
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.
python
def n(s):
return [s[i:i+2] for i in range(len(s) if len(s) % 2 == 0 else len(s)-1)]
x = set(n('paraparaparaise'))
y = set(n('paragraph'))
print(x.union(y))
print(x.intersection(y))
print(x.difference(y))
print("se" in x)
print("se" in y)
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.
python
def f(x, y, z):
return '%s Zeit%s ist%s' % (x, y, z)
print(f(12, 'Temperatur', 22.4))
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.
python
def cipher(s):
r = ''
for x in s:
if 97 <= ord(x) <= 122:
r += chr(219 - ord(x))
else:
r += x
return r
s = "I couldn't believe that I could actually understand what I was reading : \
the phenomenal power of the human mind ."
print(cipher(s))
print(cipher(cipher(s)))
Was du kommentiert hast
def cipher(s):
return ''.join(c.islower() and chr(219-ord(c)) or c for c in s)
s = "I couldn't believe that I could actually understand what I was reading : \
the phenomenal power of the human mind ."
print(cipher(s))
print(cipher(cipher(s)))
python
import random
s = "I couldn't believe that I could actually understand what I was \
reading : the phenomenal power of the human mind ."
s = s.split(' ')
for i, x in enumerate(s):
if len(x) > 4:
r = x[1:-1]
s[i] = x[0] + ''.join(random.sample(r, len(r))) + x[-1]
print(' '.join(s))
Recommended Posts