Если вы действительно хотите, это можно сделать, используя applymap
и zip
.
a, b = map(list, zip(*df.applymap(lambda x: (x, )).values.tolist()))
a = list(map(tuple, [a_[0] for a_ in a]))
a
# [('h', 'j', '1', '2', '3', '4'),
# ('g', 'u', '0', '9', '9', '8'),
# ('i', 'u', '5', '6', '7', '8'),
# ('5', '6', 'h', '7', '8', '1')]
b
# [(2,), (5,), (7,), (11,)]
Другой вариант - просто обрабатывать каждый столбец отдельно.
a = list(map(tuple, df['Input']))
b = [(x, ) for x in df['Output']]
a
# [('h', 'j', '1', '2', '3', '4'),
# ('g', 'u', '0', '9', '9', '8'),
# ('i', 'u', '5', '6', '7', '8'),
# ('5', '6', 'h', '7', '8', '1')]
b
# [(2,), (5,), (7,), (11,)]