Форум сайта python.su
alexx11возможно,надо будет потом узнать.
может быть KOI-8?
Отредактировано (Янв. 25, 2011 20:19:04)
Офлайн
назови файл 1.py скажем file1.py (чтоб с букв начиналось имя)
impot file1
mydic = file1.slovar
if slovo in mydic:
…
Офлайн
огромное спасибо,код получился таким,переменную mydic пришлось заменить иначе не работало:
if slovo in spisok:
import file1
slovar = file1.slovar #вот здесь я немного не понял.
if slovo in slovar:
print (slovar)
else:
print (“нет такого слова”)
————————————————————–
slovar = file1.slovar
я вот здесь немного не понял,вводится переменная slovar, она равна file1(это я предпалагаю что фаил является уже модулем?), а дальше зачем писать точку и slovar ? если не сложно объясните плиз.
Офлайн
вот этот вариант наверное правельней,но он не работает:
if slovo in spisok:
import file1
mydic = file1.slovar
if slovo in mydic:
print (slovar)
else:
print (“нет такого слова”)
Офлайн
if slovo[0] in spisok:
import file1
reload(file1) # если file1 изменялся после запуска скрипта без этой
# команды вы не увидите изменения
mydic = file1.slovar
if slovo in mydic:
print (mydic[slovo]) # здесь у вас была ошибка
else:
print ("нет такого слова")
Отредактировано (Янв. 26, 2011 11:20:50)
Офлайн
решил проблему с именами выбираемых модулей,но из-за кодировки появляются ошибки.собственно вот:
if slovo in spisok:
modname = “filek%s” % (spisok[slovo])
filek = __import__(modname) #есть аналогичное exec “import ” + modname
mydic = filek.slovar # но в чем разница не знаю
————————
если список сделать только из английских букв то код работает идеально.
Отредактировано (Янв. 26, 2011 21:34:03)
Офлайн
В смысле вы хотите импортировать модуль с русским именем? Не выйдет.
Офлайн
Андрей Светловнет,я изначально знал что модули с русскими именами не сработают,поэтому имена будут filek%s где %s это число от 1 до 33 по числу букв соответственно.тоесть проверяется первая буква - загружается соответственный модуль.
Re: словарь
В смысле вы хотите импортировать модуль с русским именем? Не выйдет.
Отредактировано (Янв. 26, 2011 21:33:00)
Офлайн
Зависит от ваших настроек..
Кроме того, какую кодировку вы имеете в виду? Локаль процесса, файловой системы или что-то еще?
Или питона?
utf8, скорее всего - у вас по умолчанию.
Для питона - ascii, пока не укажете другую в заголовке # -*- encoding:utf-8 -*-
Офлайн
Андрей Светловесли бы я знал,я бы смог ответить на этот вопрос. все что знаю: мне нужно сделать виждет для среды kde в линуксе. какую кодировку использует kde или линукс я не знаю,но ввод букв с клавиатуры использующие кодировку должны совпадать с кодировкой исполняемого питоновского файла
Кроме того, какую кодировку вы имеете в виду? Локаль процесса, файловой системы или что-то еще?
Или питона?
Офлайн