Как возвращать данные из потоков?

Есть файл около 80 тыс. строчек. Мне построчно нужно обработать их и каждую из них занести в датасет. Для ускорения работы я создаю потоки, но не знаю как можно реализовать возврат данных оттуда. Пробовал переменную делать глобальной, но это не сработало. Я знаю, что можно попробовать возвращать их через очереди, но не знаю как это сделать

import pandas as pd
import threading
import queue

def read_line(my_df, line):
    separators = ['"', ' ', '[', ']']
    curretnSep = ''

    resultList = []
    newString = ''

    for s in line:
        if s in separators:
            if curretnSep == '':
                curretnSep = s
                if newString != '': resultList.append(newString)
                    newString = ''
                elif curretnSep == s or curretnSep == '[' and s == ']':
                    curretnSep = ''
                if newString != '': resultList.append(newString)
                    newString = ''
                elif curretnSep == ' ':
                    curretnSep = s
                elif (curretnSep == '"' or curretnSep == '[') and s == ' ':
                    newString += s
                else:
                    newString += s
        print(resultList)
        if len(resultList) != 0:
            newline = {'%h': resultList[0], '%l': resultList[1], '%u': resultList[2], '%t': resultList[3],
               '%r': resultList[4], '%>s': resultList[5], '%b': resultList[6], '%{Referr}i': resultList[7],
               '%{Useragent}i': resultList[8]}
    my_df = my_df.append(newline, ignore_index=True)

global my_df
col_names = ['%h', '%l', '%u', '%t', '%r', '%>s', '%b', '%{Referr}i', '%{Useragent}i']
my_df = pd.DataFrame(columns=col_names)

threads = []
k = 0

with open("1.txt") as infile:
    for line in infile:

        if k < 400:
            t = threading.Thread(target=read_line, args=(my_df, line,))
            t.start()
            threads.append(t)
        else:
            for thread in threads:
                thread.join()
                threads = []



my_df.to_csv('file1.csv', header=True, sep=';')

Ответы (0 шт):