У меня есть скрипт, который анализирует файл csv и создает XML-файл. Одним из аргументов, которые я должен дать синтаксическому анализатору, является разделитель, который в моем случае не является запятой, а вкладкой.Элементы Python ConfigParser в аргументы CSV
Эта информация хранится в файле конфигурации, который я извлекаю, а затем передаю парсер csv.
ident = parser.get('CSV', 'delimiter') #delimiter taken from config file
csv.register_dialect('custom',
delimiter= ident, #passed to csv parser
doublequote=False,
escapechar=None,
quotechar='"',
quoting=csv.QUOTE_MINIMAL,
skipinitialspace=False)
Однако я получаю ошибку типа, говоря, что «разделитель» должен быть 1-символьной строкой. Я проверил тип идентификатора, и это строка, но, похоже, она не признает \ t в качестве вкладки. Когда я помещаю ident = '\ t' или delimiter = '\ t', он работает. Как правильно получить значение из файла конфигурации.
Что LEN (идент) и магнезии (ОПОЗНАВАНИЕ)? –
Есть пробелы вокруг разделителя в файле конфигурации? Может быть, вам нужно использовать strip()? Что показывает «распечатать идентификатор»? – ernie
печать идентификационных отображений \ t – charlie123