Heim > Backend-Entwicklung > Python-Tutorial > So verwenden Sie reguläre Python-Ausdrücke für die Multiprozessprogrammierung

So verwenden Sie reguläre Python-Ausdrücke für die Multiprozessprogrammierung

PHPz
Freigeben: 2023-06-22 13:58:40
Original
893 Leute haben es durchsucht

Python ist eine weit verbreitete Programmiersprache, deren Modul für reguläre Ausdrücke zum Abgleichen, Suchen und Bearbeiten von Zeichenfolgen verwendet werden kann. Bei der Multiprozessprogrammierung handelt es sich um eine Programmiertechnologie, die Aufgaben parallel verarbeitet, wodurch die Ausführungseffizienz des Programms verbessert werden kann. In diesem Artikel wird erläutert, wie Sie reguläre Python-Ausdrücke für die Multiprozessprogrammierung verwenden, um große Datenmengen schneller zu verarbeiten.

  1. Importieren Sie die erforderlichen Bibliotheken

Bei der Multiprozessprogrammierung müssen Sie die Multiprocessing- und Re-Bibliotheken verwenden. Multiprocessing wird zum Erstellen und Verwalten von Prozessen verwendet, und Re wird zum Anwenden regulärer Ausdrücke verwendet.

import multiprocessing
import re
Nach dem Login kopieren
  1. Daten vorbereiten

Bevor Sie reguläre Ausdrücke verwenden, benötigen Sie einige passende Daten. In diesem Artikel wird eine Liste von Zeichenfolgen verwendet, die als Beispieldaten abgeglichen werden müssen.

data = [
    'xyz_123_mn1_na1234_qwe_rty',
    'pqr_234_mn2_na2345_asd_fgh',
    'hjk_345_mn3_na3456_zxc_vbn',
    'lmn_456_mn4_na4567_qaz_wsx',
    'hgo_567_mn5_na5678_edc_rfv'
]
Nach dem Login kopieren
  1. Regulären Ausdruck definieren

Bevor Sie den Abgleich mit regulären Ausdrücken durchführen, müssen Sie zunächst einen regulären Ausdruck definieren.

Der reguläre Ausdruck in diesem Beispiel wird verwendet, um Zahlen in einer Zeichenfolge abzugleichen, wobei d+ den Abgleich mit einer oder mehreren Zahlengruppen bedeutet.

pattern = re.compile(r'd+')
Nach dem Login kopieren
  1. Definieren Sie die Verarbeitungsfunktion

Bei der Mehrprozessprogrammierung müssen Sie zunächst eine Funktion definieren und die Daten zur Verarbeitung an die Funktion übergeben. Die Funktion in diesem Beispiel verwendet die Parameterdaten als Eingabe, extrahiert die passende Zahl in jeder Zeichenfolge und gibt sie als Rückgabewert zurück.

def get_numbers(data):
    result = list()
    for string in data:
        numbers = pattern.findall(string)
        result.append(numbers)
    return result
Nach dem Login kopieren
  1. Erstellen Sie einen Prozesspool

Nach der Vorbereitung der Daten und Funktionen können Sie einen Prozesspool erstellen, um die Daten parallel zu verarbeiten.

if __name__ == '__main__':
    # 创建进程池
    pool = multiprocessing.Pool()
Nach dem Login kopieren
  1. Aufgaben an den Prozesspool senden

Mit der Map()-Methode des Prozesspools können Aufgaben zur parallelen Verarbeitung an den Prozesspool übermittelt werden.

    # 将任务提交到进程池
    result = pool.map(get_numbers, [data])
Nach dem Login kopieren
  1. Schließen Sie den Prozesspool und geben Sie die Ergebnisse aus

Nach dem Absenden der Aufgabe müssen Sie den Prozesspool schließen, um Ressourcen freizugeben. Gleichzeitig müssen auch die Verarbeitungsergebnisse ausgegeben werden.

    # 关闭进程池
    pool.close()
    pool.join()

    # 输出结果
    print(result)
Nach dem Login kopieren

Vollständiges Codebeispiel:

import multiprocessing
import re

data = [
    'xyz_123_mn1_na1234_qwe_rty',
    'pqr_234_mn2_na2345_asd_fgh',
    'hjk_345_mn3_na3456_zxc_vbn',
    'lmn_456_mn4_na4567_qaz_wsx',
    'hgo_567_mn5_na5678_edc_rfv'
]

pattern = re.compile(r'd+')


def get_numbers(data):
    result = list()
    for string in data:
        numbers = pattern.findall(string)
        result.append(numbers)
    return result


if __name__ == '__main__':
    # 创建进程池
    pool = multiprocessing.Pool()

    # 将任务提交到进程池
    result = pool.map(get_numbers, [data])

    # 关闭进程池
    pool.close()
    pool.join()

    # 输出结果
    print(result)
Nach dem Login kopieren

Fazit

Die Verwendung regulärer Python-Ausdrücke und Multiprozessprogrammierung kann die Effizienz der Datenverarbeitung erheblich verbessern. In diesem Artikel wird erläutert, wie Sie reguläre Python-Ausdrücke für die Multiprozessprogrammierung verwenden, damit Sie Aufgaben bei der Arbeit mit großen Datenmengen in Zukunft schneller erledigen können.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Python-Ausdrücke für die Multiprozessprogrammierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage