Это может быть сделано с одной print
заявление
>>> d = '123|china|jack|342|usa|Nick|324345|spin|Amy'
>>> l = d.split('|')
>>> print(*list(map(lambda v: ','.join(v),[l[x: x+3] for x in range(0, len(l), 3)])), sep='\n')
123,china,jack
342,usa,Nick
324345,spin,Amy
Итак, шаг за шагом
>>> d = '123|china|jack|342|usa|Nick|324345|spin|Amy'
>>> l = d.split('|') # splitting input string into list of str objects that separated with '|'
>>> l
['123', 'china', 'jack', '342', 'usa', 'Nick', '324345', 'spin', 'Amy']
>>> [l[x: x+3] for x in range(0, len(l), 3)] # combining elements by 3
[['123', 'china', 'jack'], ['342', 'usa', 'Nick'], ['324345', 'spin', 'Amy']]
>>> list(map(lambda v: ','.join(v),[l[x: x+3] for x in range(0, len(l), 3)])) # merging every sublist to str with ',' as separator
['123,china,jack', '342,usa,Nick', '324345,spin,Amy']
>>> print(*list(map(lambda v: ','.join(v),[l[x: x+3] for x in range(0, len(l), 3)])), sep='\n') # final print
123,china,jack
342,usa,Nick
324345,spin,Amy
меня пытается с помощью SQL, чтобы разобрать эту вещь, но файл слишком велик, и я действительно не специалист по питона – love233126
'String.Split («|»)' будет делать, если 'строка =«123 | china | jack | 342 | usa | Nick | 324345 | spin | Amy''. попробуйте распечатать новую строку после 3-х элементов. Она решит вашу проблему. –