Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.fds-net.ru/showflat.php?Number=9506822&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Wed Apr 13 01:34:06 2016
Кодировка: Windows-1251
как в питоне ненапряжно считать name=value из файла - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Development (Archive)

Страницы: 1
Basilio
GreenOne

Рег.: 14.10.2002
Сообщений: 13750
Из: Москва
Рейтинг: 3476
  как в питоне ненапряжно считать name=value из файла
      17.05.2010 01:26
 

че-то у меня в полвторого глаз замылился и в голову лезут всякие ConfigParser-ы.
есть файл в котором что-то в духе:
code:
name=value othername=other value ook=oak annot=some other long text


как это попроще прочитать? ну, с разбором ессно, чтобы по имени можно было доступ иметь

Klevzoff
member

Рег.: 13.06.2006
Сообщений: 151
Рейтинг: 151
  Re: как в питоне ненапряжно считать name=value из файла [re: Basilio]
      17.05.2010 04:05
2

ну если все так ажурно, как в твоем примере, то наверное

config = {}
for line in open('smth.conf'):
    a = line.split('=', 1)
    config[a[0]] = a[1]


подойдет?

Kai

Рег.: 25.10.2002
Сообщений: 8251
Рейтинг: 818
  Re: как в питоне ненапряжно считать name=value из файла [re: Klevzoff]
      17.05.2010 04:35
3

Забыл \n в конце строк порезать.
code:
config = dict([s.rstrip().split('=', 1) for s in open('smth.conf')])


Vital303
tired

Рег.: 18.10.2004
Сообщений: 480
Рейтинг: 44
  Re: как в питоне ненапряжно считать name=value из файла [re: Basilio]
      17.05.2010 12:52
 

In Antwort auf:

ну, с разбором ессно, чтобы по имени можно было доступ иметь



Если ты свободен в выборе формата, можно сделать конфигурацию кодом на питоне.
Для безопасности --- выполнить его в защищенном окружении
http://docs.python.org/library/restricted.html

__No__

Рег.: 17.01.2005
Сообщений: 21062
Из: Внутренняя Монголия
Рейтинг: 6310
  Re: как в питоне ненапряжно считать name=value из файла [re: Vital303]
      17.05.2010 12:59
 


 
Quote:

ненапряжно






Dixi.
Vital303
tired

Рег.: 18.10.2004
Сообщений: 480
Рейтинг: 44
  Re: как в питоне ненапряжно считать name=value из файла [re: __No__]
      17.05.2010 13:35
2

Ну как,
code:
import os execfile(os.path.expanduser('~/.myprog/config.py'))
и любой сложности объекты из файла в пространстве имен :)

Basilio
GreenOne

Рег.: 14.10.2002
Сообщений: 13750
Из: Москва
Рейтинг: 3476
  Re: как в питоне ненапряжно считать name=value из файла [re: Vital303]
      17.05.2010 14:58
2

т.е. переделать на
code:
name="value"

?
занятно.. надо подумать

__No__

Рег.: 17.01.2005
Сообщений: 21062
Из: Внутренняя Монголия
Рейтинг: 6310
  Re: как в питоне ненапряжно считать name=value из файла [re: Vital303]
      17.05.2010 15:03
1

Quote:

и любой сложности объекты из файла в пространстве имен :)




Где тут что restricted?

И чего бы тогда не делать просто "import config"?

execfile:
 
Quote:

This function is similar to the exec statement, but parses a file instead of a string. It is different from the import statement in that it does not use the module administration - it reads the file unconditionally and does not create a new module.






Dixi.
Vital303
tired

Рег.: 18.10.2004
Сообщений: 480
Рейтинг: 44
  Re: как в питоне ненапряжно считать name=value из файла [re: __No__]
      17.05.2010 15:56
2


 
In Antwort auf:

Где тут что restricted?
И чего бы тогда не делать просто "import config"?



Нет restricted, можно прикрутить (хотя, я сейчас вижу, что не так просто
как я думал).
 
In Antwort auf:

Deprecated since version 2.6: The rexec module has been removed in Python 3.0.



Можно сделать import.

Страницы: 1

Technical >> Development (Archive)

Дополнительная информация
1 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  DarkGray 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в