Для моего проекта я делаю некоторые вещи и извлекаю определенную строку из вывода командной строки, а затем вставляю ее в список. Оттуда я экспортирую список в учебный файл для последующего использования алгоритма обучения. Проблема заключается в том, когда я вытащить информацию с командной строки она тянетФункция карты в строковом списке, печатающая ячейку памяти
"Number\n"
Когда я добавить список в текстовый файл не печатает
Number, Number, Number
Вместо этого он печатает
Number
Number
Number
Он применяет символ новой строки, и это почти бесполезно для меня. С некоторыми googling я нашел эту ссылку Strip all the elements of a string list объясняя, что я думал, именно то, что мне нужно для решения проблемы. Он удаляет символ новой строки и превращает список в то, что мне нужно для последующего использования. ЗА ИСКЛЮЧЕНИЕМ по какой-либо причине он не работает.
Вот мой код
def exportlist(self):
file = open('Trainingfile.txt','a+')
# i pass it into a variable since i ran into some odd errors if i try
# to apply the map function to self.vectorlist
my_list= self.vectorlist
print(my_list) # prints [ 'number\n', 'number\n'......]
# WHAT THE ABOVE LINK AND OTHERS SAID SHOULD WORK
strip_list= map(str.rstrip('\n'), my_list)
print(strip_list) # prints "map object at 0x00000002C...."
self.vectorlist = strip_list # test code
print(self.vectorlist) # prints same as strip_list
file.close()
я получить аналогичные результаты, если я использую chr.split вместо полосы. Печать my_list печатает неверно отформатированный список. печать strip_list, который должен быть правильно отформатированным списком, печатает то, что, по моему мнению, является ячейкой памяти «0x0000000002C ....» Все, что я нашел в Интернете, говорит мне, что это не должно печатать это. Он должен печатать правильно отформатированный список. Кто-нибудь знает, почему это происходит? Это происходит каждый раз, когда я использую функцию карты. Я попробовал несколько методов, чтобы удалить «\ n» из моего списка, но он всегда возвращает то же самое.
Просто сделал это, и я не сказал бы он выходит из строя, но это идет от печати сразу до запуска в течение 30 секунд, а затем дает мне ошибку Объект 'str' не может быть вызван – Sam
@Sam: Поскольку вы не должны использовать 'str' в качестве имени переменной, вы использовали' str' как после того, как вы снова переопределяете его как переменную **? –
'print()' медленный. Просто возьмите все 'print()' out. Какая ошибка? У вашего вопроса нет сообщения об ошибке. –