достаточно просто :
import threading # библеотеки базовые - ничего устанавливать не надо
from queue import Queue # вариант получения значения №1
items = ["1", "2"] # пример списка
s = None # вариант получение значения №2
def function_for_new_thread(items, queue): # thread работает с функциями
global s # пользуемся глобальностью что очевидней но не рекомендованно
its = []
for elem in items:
its.append(elem) # ваш код
s = its # глобальная переменная получает нужное значение (№1)
queue.put(its) # пишем в queue наш список (№2)
var_for_thread = Queue() # создание queue
new_thread = threading.Thread(target=function_for_new_thread,
args=(items, var_for_thread,))
# target = функция, args=(нужные данные,) запятая в конце перечисления всех обязательна
new_thread.start() # на старт, внимание, марш
new_thread.join() # ждем поток
print(var_for_thread.get()) # наши данные через queue (№1)
print(s) # наши данные через global (№2)