Как удалить квадратные скобки и апострофы из списков

#python #python-3.x

Вопрос:

Я напечатал каждый элемент списка в новой строке, но не могу решить, как удалить квадратные скобки и апострофы.

Это мой вывод:

 Statement:
Initial balance                 100.0     
event                amount ($) balance ($)
['Ride                 3.5        96.5      ']
['Ride                 10.9       85.6      ']
['Top Up               20.0       105.6     ']
Final balance                   105.6     
 

вот как я добавляю вещи в свои списки:

 transaction = [("{:<20} {:<10} {:<10}".format('Top Up', amount, self.balance))]
self.statement.append(transaction)
 

и вот как я печатаю свои списки на новую строку:

 print(*self.statement, sep='n')
 

Спасибо

Комментарии:

1. Используйте .extend вместо .append .

2. transaction является а list с одним элементом, который есть str . Это то, что вы создаете. Почему вы удивлены результатом? почему вы создаете transaction list в первую очередь как а?

3. @AndrewMizuno На самом деле это неправильное решение. Лучше сделайте transaction строку, если вы больше нигде ее не используете: transaction = "{:<20} ...".format(...) и продолжайте использовать append .

Ответ №1:

В вашем коде «транзакция» — это элемент списка. Это означает, что вы добавляете список в «self.statements», создавая вложенный список. Вместо этого «транзакция» должна быть строковым элементом, подобным этому.

 transaction = "{:<20} {:<10} {:<10}".format('Top Up', amount, self.balance)