2016-08-16 2 views
3

Я запускаю Python 2.7.12, установленный с homebrew на моей Mac OS X 10.11 и пытающийся использовать pyautogui. Однако он продолжает сбой («Python неожиданно завершает работу»), когда я пытаюсь запустить его как импортированный модуль в другой .py-файл. Например:python неожиданно запускает pyautogui

# gui.py 

    import pyautogui 

    def myfunction(): 
     pyautogui.click(100 , 200) 

    if __name__ == '__main__': 
     myfunction() 


    # another.py 

    import gui 

    gui.myfunction() 

Он работает нормально, когда я запускаю «python gui.py» в одиночку. Но когда я пытаюсь запустить another.py, даже без вызова какой-либо функции из gui.py, Python будет разбиваться каждый раз. После того, как он сузился с линейным устранением, кажется, что это

import pyautogui 

, который вызвал сбой. Любая идея почему? Все, что я знаю, когда он включен в качестве модуля, создается файл .pyc. Я попытался удалить его и снова запустить, но ничего не сделал.

Спасибо!

+0

Вы пытались запустить его с помощью python 3.4? это поддерживается. Интересный модуль BTW. –

+0

Нет. Проекты пара, которые я сейчас нахожу, написаны на Python 2. Если это действительно сходит с ума, я готов переключиться, но я надеюсь, что мне еще не нужно идти в ядерное производство. – Ning

+0

вы используете? обновите хотя бы до 2.7.10. Тогда вы можете определить переменную 'PYTHONNOWRITEBYTECODE' env., чтобы избежать создания' .pyc' (в случае, если это проблема). FYI отлично работает здесь в Windows 10 и python 2.7. 10. Никаких сбоев до сих пор. Вы также можете провести тест с pyhton 3.4, чтобы узнать, делает ли он то же самое. –

ответ

1

Я понял! Это потому, что я импортирую pyscreenshot, и есть конфликт между ним и pyautogui. Оба используют подушку и, возможно, имеют некоторые разные ссылки на нее, что я недостаточно осведомлен, чтобы рассказать. Но как только я удалил pyscreenshot, pyautogui работает нормально.

Смежные вопросы