Как убрать последний символ при print?

Мой ответ буквально не принимают из-за последнего невидимого пробела. Каким способом его можно удалить?

    def __init__(self,stroka):
        date = stroka.split()
        self.__kol = dict(zip(date[::2],[int(i) for i in date[1::2]]))
 
    def __del__(self):
        pass
 
    def getval(self, namebook):
        return self.__kol[namebook]
 
    def takebook(self,namebook,val):
        self.__kol[namebook] = self.__kol[namebook] - int(val)
        return self.__kol[namebook]
 
    def addbook(self, namebook, val):
        self.__kol[namebook] = self.__kol[namebook] + int(val)
        return self.__kol[namebook]
 
date_book = 'Boogeyman 66 Battleground 50'
a = Book(date_book)
for book in date_book.split()[::2]:
    print(book,a.getval(book),a.takebook(book,1), a.addbook(book,1), sep=' ', end=' ', flush=True) ```

Ответы (1 шт):

Автор решения: DiMithras

тогда не будет пробела между ответами

Чтобы сохранить все пробелы

print(' '.join([' '.join([str(book),str(a.getval(book)),str(a.takebook(book,1)),str(a.addbook(book,1))]) for book in date_book.split()[::2]]))

Запускать без цикла for book in date_book.split()[::2]:


Или более читаемый вариант с объявлением list переменной:

date_book = 'Boogeyman 66 Battleground 50'
a = Book(date_book)
output = []
for book in date_book.split()[::2]:
    output.append(book)
    output.append(a.getval(book))
    output.append(a.takebook(book,1))
    output.append(a.addbook(book,1))
print(' '.join(str(i) for i in output))
→ Ссылка