Вопрос № 177201: Каспада Нужен скрипт отправляющий сообщение в чат скайпа 1) нашел в гугле скрипт. вот он: #!/usr/bin/python import Skype4Py import sys import os # customize DISPLAY os.environ['DISPLAY'] = '127.0.0.1:0.0' if...
Вопрос № 176554: здравствуйте, уважаемые эксперты! Как сделать, чтобы переменная которая находится в функции была доступна в другой функции?...
Вопрос № 177444: Здравствуйте, уважаемые эксперты! Подключаю модуль преобразующий число с 10й в 16ю систему счислений. После компиляции выдается ошибка: n=pole.get() NameError: global name 'pole' is not defined ------------------------- Вот...
Вопрос № 177201:
Каспада Нужен скрипт отправляющий сообщение в чат скайпа 1) нашел в гугле скрипт. вот он: #!/usr/bin/python import Skype4Py import sys import os # customize DISPLAY os.environ['DISPLAY'] = '127.0.0.1:0.0' if len(sys.argv) != 3: print 'usage: <user_handle> <message>' sys.exit(1) skype = Skype4Py.Skype() skype.CreateChatWith( sys.argv[1] ).SendMessage( sys.argv[2].decode("utf-8") );
2) Нашел и установил Skype4Py
3)
а он меня вот такимим ошибками
Traceback (most recent call last): File "4.py", line 10, in <module> skype = Skype4Py.Skype() File "/usr/local/lib/python2.5/site-packages/Skype4Py/skype.py", line 250, in __init__ self._Api = SkypeAPI(Options) File "/usr/local/lib/python2.5/site-packages/Skype4Py/api/posix.py", line 35, in SkypeAPI from posix_dbus import SkypeAPI File "/usr/
local/lib/python2.5/site-packages/Skype4Py/api/posix_dbus.py", line 46, in <module> from dbus.mainloop.glib import DBusGMainLoop ImportError: No module named mainloop.glib
что ему родненькому надо. ОС SUSE 10 python сами понимаете 2.5
Как что - dbus-python. Уж кто и зачем отрезал от этого пакета mainloop - не знаю. В fedora он вместе с остальными компонентами. Должен быть в python2.5/site-packages/dbus/mainloop/glib.py
Впрочем у import есть грабли: python ищет модули сначала в текущем каталоге, и если там случайно есть dbus/, dbus.py или dbus.pyc - эффект получается убойный.
Ответ отправил: Хватов Сергей, Профессионал
Ответ отправлен: 12.03.2010, 13:30
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 260064
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 176554:
здравствуйте, уважаемые эксперты! Как сделать, чтобы переменная которая находится в функции была доступна в другой функции?
Отправлен: 07.02.2010, 20:58
Вопрос задал: WWWorm, Посетитель
Всего ответов: 1 Страница вопроса »
Отвечает Хватов Сергей, Профессионал :
Здравствуйте, WWWorm. Надо объявить эту рпеременную global:
Код:
def fun(arg): global var var=arg
Ответ отправил: Хватов Сергей, Профессионал
Ответ отправлен: 07.02.2010, 21:11
Оценка ответа: 4
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 259300
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 177444:
Здравствуйте, уважаемые эксперты! Подключаю модуль преобразующий число с 10й в 16ю систему счислений. После компиляции выдается ошибка: n=pole.get() NameError: global name 'pole' is not defined ------------------------- Вот часть основного кода: ... view=Menu(m) m.add_cascade(label=u"Вид",menu=view) view.add_command(label=u"Шестнадцатеричный",command=Hex) ... ...
global pole pole=Entry(root,width=30,bd=5,font="12") # Поле
вывода чисел ...
Отправлен: 24.03.2010, 18:11
Вопрос задал: WWWorm, Посетитель
Всего ответов: 1 Страница вопроса »
Отвечает Хватов Сергей, Профессионал :
Здравствуйте, WWWorm. global - это директива для компилятора, и делает объект глобальным лишь в пределах одного блока. Применять её вне какой-либо функции бессмысленно.
Добраться до объекта из основного модуля вообще-то можно: __builtin__.__dict__['pole'].get(), но это уже похоже на извращение И во всяком случае, на ошибку в дизайне своей программы. Лучше определять get в модуле (вероятно как метод какого-либо класса по канонам ООП)
и потом импортировать в тех модулях, где он используется.
Ответ отправил: Хватов Сергей, Профессионал
Ответ отправлен: 24.03.2010, 18:28
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 260338
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.