Всем привет! Задача вроде простая, но я не понимаю как такое сотворить.
Есть два массива по 50к элементы. Нужно создать третий массив в котором будут не повторяющиеся элементы из тех двух массивов. Вообщем нужно убрать дубли. Скрипт написал, но он работает в одном потоке. И это очень долго. Как распределить эти все данные между потоками?
Вот мой код:
import pandas as pd
import json
from time import sleep
from threading import Thread
def get_data(file_name):
df = pd.read_excel(file_name,sheet_names=0)
data = []
for item in df.to_records(index=False):
data.append(item[0])
return data
if __name__ == '__main__':
test1 = get_data('t1.xlsx')
test2 = get_data('t3.xlsx')
result = []
# with open('result.json','w') as file_json:
for i,ii in enumerate(test1):
for j,jj in enumerate(test2):
print(i,j)
if i == j:
continue
if ii.strip().lower() not in jj.strip().lower():
if ii.strip().lower() not in result:
result.append(ii.strip().lower())
df = pd.DataFrame(result)
df.to_excel('r.xlsx',index=False,header=None)
# file_json.write(json.dumps(ii)+'\n')
Есть такая мысль как это сделать, но довести до ума не получается: длины этих двух массивов разделить на 10(кол-во потоков) а затем каким-то образом через функцию range запускать массив в каждом потоке по выбранным областям