Прежде чем вы зациклите переменную, вам нужно знать, какой это тип переменной. Например, если мы перебираем список, мы получаем каждый элемент списка индивидуально:
>>> customers = ['tom', 'dick', 'harry']
>>> for person in customers:
>>> print(person)
tom
dick
harry
Но если мы перебираем строку, мы получаем каждый символ индивидуально:
>>> purchase = 'wine'
>>> for letter in purchase:
>>> print(letter)
w
i
n
e
Похоже, что выперебираете строку, когда вы ожидаете перебора списка. Попробуйте адаптировать что-то подобное к вашей проблеме:
>>> customer_transactions = [['tom', 10.99, 'bottle of wine'],
['dick', 14.49, '400g blue stilton'],
['harry', 5.00, 'six pack of fosters']]
>>> customers = []
>>> sales = []
>>> items = []
>>> for transaction in customer_transactions:
>>> customers.append(transaction[0])
>>> sales.append(transaction[1])
>>> items.append(transaction[2])
Теперь, поскольку customers
, sales
и items
- это все списки, которые мы можем перебирать и по ним:
# continued from last code block
>>> for person in customers:
>>> print(f"Thank you, {person}.")
Thank you, tom.
Thank you, dick.
Thank you, harry.