Предполагая, что текст точно такой, как у вас в вопросе:
import re
input = """
'Noah,14,233,66,21,88,42'
'Robert,34,11,667,2,785,23'
'Jackson,85,22,73,12,662,5'
"""
lines = re.findall("'.*'", input) # Find lines which contain text between single quotes
tuples = []
for line in lines:
line = line.replace("'", "").split(",") # Remove single quotes, split by comma
tuples.append((line[0], line[1:])) # Add to tuple
print(tuples)
Что будет печатать:
[
('Noah', ['14', '233', '66', '21', '88', '42']),
('Robert', ['34', '11', '667', '2', '785', '23']),
('Jackson', ['85', '22', '73', '12', '662', '5'])
]
Сначала мы берем все строки, которые имеют что-то между двумя одинарнымицитаты.Затем возьмите одинарные кавычки и создайте массив, разделив его запятыми.Наконец, создайте кортеж с первым элементом и вложенным массивом второго до последнего элемента.