Ich möchte meinen Text mit meinem eigenen Array aufhalten:

word_list1 = ["cccc", "bbbb", "aaa"]

def stem_text(text):
     text = text.split()
     array = np.array(text)
     temp = np.where(array == word_list1, word_list1[0], array)
     text = ' '.join(temp)
     return text

Ich möchte das so machen:

Überprüfen Sie für alle Wörter in word_list1 den Text und ersetzen Sie ihn durch word_list[0], wenn ein Wort übereinstimmt.

1
InvBoy01001 24 Feb. 2020 im 11:42

3 Antworten

Beste Antwort

Sie können das Listenverständnis verwenden

word_list1 = ["cccc", "bbbb", "aaa"]

def stem_text(text):
    text = text.split()
    temp = [word_list1[0] if i in word_list1 else i for i in text]
    text = ' '.join(temp)
    return text

stem_text("hello bbbb now aaa den kkk")

Ausgabe :

'hello cccc now cccc den kkk'
0
Asetti sri harsha 24 Feb. 2020 im 08:50
word_list1 = ["cccc", "bbbb", "aaa"]

def stem_text(text):
  text = text.split()

  for keyword in word_list1:
    text.replace(keyword, word_list1[0])

  text = ' '.join(temp)
  return text

Sie können einfach einen Ersatz ausführen. Wenn es existiert (if keyword in text), wird es ersetzt. Aber wenn es nicht existiert, wird die Ersetzungsfunktion nichts tun, also ist das auch in Ordnung. Die if-Bedingung ist also nicht erforderlich.

0
Tin Nguyen 24 Feb. 2020 im 08:51

Angenommen, Sie haben eine Liste von Wörtern, die Sie durch "cccc" ersetzen möchten, und eine Zeichenfolge, in der Sie diese Wörter suchen und ersetzen möchten.

words_to_replace = [...]
word_list1 = ["cccc", "bbbb", "aaa"]
string = 'String'
for word in words_to_replace:
   new_string = string.replace(word, words_list1[0])
   string = new_string
-1
shiva 24 Feb. 2020 im 13:34