При написании текста в Pygame появляются странные прямоугольники - PullRequest
2 голосов
/ 12 марта 2019

Я новичок в pygame и python в целом, поэтому я предполагаю, что здесь есть вероятность серьезных ошибок.

Я пытаюсь заставить текст появляться в диалоговом окне.Я разработал систему, и текст отображается правильно, но когда текст загружается, в конце текста появляется символ вертикального прямоугольника.

Мне кажется, что этот символ представляет «возврат»ключ.Вот текстовый файл, из которого я извлекаю:

00*It’s your favorite game console.
01*-Player's House-

Вот , как текст отображается в игре.

А вот мой код для разбивки текстового файлана сегменты:

with open("textList.txt", "r") as f:
    data = f.readlines()
    for line in data:
        cutInfo = line.split("*")
        if dblock.textnum == cutInfo[0]:
            self.text = cutInfo[1]

Мне интересно, есть ли способ избавиться от прямоугольника без простого обрезания конца строки, и я также хочу сохранить результаты в текстовом файле, чтобыболее читабельным (и не сжимается в одну строку).Однако, если нет обходного пути, я думаю, я мог бы внести эти изменения.

1 Ответ

0 голосов
/ 12 марта 2019

for line in file: сохраняет завершающие символы новой строки.

Вы можете использовать line.strip(), чтобы избавиться от начальных и конечных пробелов.

cutInfo = line.strip().split("*")

Если вы не хотите избавляться от всех пробелов,

  • .strip('\r\n') удаляет только символы новой строки.
  • .rstrip('\r\n') избавляет только от конечных символов новой строки.
...