plusplus
Ноя. 25, 2010 11:36:25
Собственно, сабж. С помощью ConfigParser создаю конфиг-файл из хелпа, затем читаю этот файл, делаю print config.sections() - пусто. Почему так может быть? Под виндой этот же код нормально работает.
Андрей Светлов
Ноя. 25, 2010 12:15:52
Отлично задан вопрос! На него можно ответить только “а у меня всё работает”.
plusplus
Ноя. 25, 2010 12:24:52
Гм, проверил на FreeBSD и правда “а у меня всё работает”. А в чем может быть причина, кто-нибудь может предположить? Не видит он секции вообще.
Rodegast
Ноя. 25, 2010 13:55:53
Проверь права у файла и напиши какой код у тебя не работает.
plusplus
Ноя. 26, 2010 16:37:50
/home/abc/soulgen/example.cfg
/home/abc/soulgen/test.py
import ConfigParser
config = ConfigParser.RawConfigParser()
config.read("/home/abc/soulgen/exmaple.cfg")
print config.sections()
raw_input()
Результат скрипта:
bash-3.2$ /usr/bin/python26 ./test.py
[]
Андрей Светлов
Ноя. 26, 2010 18:45:25
Поправьте config.read(“/home/abc/soulgen/exmaple.cfg”) на правильное имя файла - будет счастье.
plusplus
Ноя. 26, 2010 19:17:40
Файл не читался, потому что я использовал пути вида “\\folder\\config.cfg”, вместо “/folder/config.cfg”. Я решил проверить, создаю файлы test.py и example.cfg, но делаю ошибку “exmaple.cfg”. И отсюда соответственно делаю вывод, что простейший пример из документации не работает - значит что-то с Линуксом. Спасибо большое, что помогли с глупым вопросом. =)
evilempirer
Ноя. 28, 2010 12:18:42
Я не понял он чего эксепшн не высыпает когда пытаешь прочитать несуществующий конфиг ?
Андрей Светлов
Ноя. 28, 2010 18:26:13
Да, такой вот кривой configparser. Исключение не бросает, и это - ни разу не хорошо.
Но жить и работать с такой особенностью - можно.
Eliont
Ноя. 30, 2010 07:48:53
inifile = ConfigParser()
inifile.read(file) # Parse config file
File "C:\PROJECTS\backpack\OO_LABS\Config_Parser.py", line 194, in read
fp = open(filename)
IOError: [Errno 2] No such file or directory: 'items.ini'
И кстати говоря, у меня ещё было что ConfigParser не видел заголовков в файле с кодировкой UTF-8.
После модифйикации согласился и utf грузить и о несуществующем файле сообщать.
Под линуксом работает, проверено.
http://dl.dropbox.com/u/11931230/Temp/ConfigParser.py