Форум сайта python.su
0
работал я на Виндовсе в Pyton3.4 пришлось поставить свою прогу на Ubuntu 14.10 в режиме отладки все вроде заработало но вот что то я не могу понять одного, а как сделать так, чтоб прога, написанная в Pyton запускалась после того как по ней кликнули??? в Виндовсе же так происходит!!!! а пока я должен запустить IDLE из под нее открыть файл и вот тогда по F5 прога стартует…. а в виндовсе просто клик - и работает!!!!! что я делаю не так??? может что то нужно в Ubuntu сделать?
Офлайн
103
sovuschkaне используете терминал
что я делаю не так???
#!/usr/bin/python
chmod +x имя_программы.py
Офлайн
0
т.к. с Ubuntu я без году неделя работаю то, пожалуйста, покажите примером …
вообще по итогу должна быть иконка, ярлык (кстати их то я и не нашел в Ubuntu) чтоб ее тыркнуть и все запустилось..
Офлайн
857
sovuschkaМожно так сделать.
чтоб ее тыркнуть и все запустилось
#!/usr/bin/env python3 import tkinter if __name__ == '__main__': tkinter.Tk().mainloop()
chmod +x w.py
./w.py
sovuschkaВ KDE легко можно сделать ярлык и иконку установить ему. Там файл .desktop создаётся, а внутри все настройки для запуска программы.
вообще по итогу должна быть иконка, ярлык
Отредактировано py.user.next (Апрель 12, 2015 02:56:42)
Офлайн
221
sovuschka
коль вы начали работать с Убунту (то бишь Linux) вам придется уяснить тот факт, что это не Windows. И работать в данном типе ОС надо иначе.
sovuschkaтам нету ярлык, вместо них система ссылок, мягких и жестких, создаются командой ln.
ярлык
terabaytи конечно же этот файл должен иметь возможность быть запущенным как программа - для этого, как вы уже знаете, есть система прав.
#!/usr/bin/python
terabayt
а в теминале
chmod +x имя_программы.py
Офлайн
0
беда в том, что когда запускаю из под IDLE все работает, а вот из командной строки нет… хоть и разрешения задавал
chmod +x имя_программы.py
./w.py
from: can't read /var/mail/PyQt5.QtWidgets
from: can't read /var/mail/PyQt5.QtCore
from: can't read /var/mail/PyQt5.QtGui
from: can't read /var/mail/PyQt5
./vid.py: строка 16: $'\r': команда не найдена
./vid.py: строка 17: ошибка синтаксиса около неожиданной лексемы `('
'/vid.py: строка 17: `class Example(QWidget):
alex@alex-machine:~/PROG$ chmod+xvid.py
chmod+xvid.py: команда не найдена
alex@alex-machine:~/PROG$ chmod +x vid.py
alex@alex-machine:~/PROG$ ld vid.py
vid.py: file not recognized: Формат файла не распознан
alex@alex-machine:~/PROG$ l
Отредактировано sovuschka (Апрель 13, 2015 01:14:10)
Офлайн
221
JOHN_16вы вот это в начале файла записали? потому что все выглядит так будто bash начал исполнять вашу программу,а не Python.
terabayt
#!/usr/bin/python
Офлайн
857
JOHN_16Надо через env запускать (она ищет по всем путям в PATH), потому что питон может лежать где-нибудь в /usr/local/bin.#!/usr/bin/python
sovuschkaА причём тут ld?alex@alex-machine:~/PROG$ ld vid.py
sovuschkaТы вот это всё проделай сначала../vid.py: строка 16: $'\r': команда не найдена
Отредактировано py.user.next (Апрель 13, 2015 08:58:40)
Офлайн
0
Ура заработало!!!! оказалось нцжно было создать из Python новый файл скопировать туда текст программы изменеием, как говорил py.user.next сохранить этот файл под каким то именем и потом применить к этому файлу разрешения на запуск. и только тогда у меня все стартовало из консоли!!!!!
т.е. файл созданный под Win Pyton3 работает под Ubuntu Pyton но как оказалось не совсем так как нужно хотя если запустить из IDLE Pyton то работает без шаманства…(окромя имен портов если они нужны как мне…)
А как сделать запуск по нажатию на какуюто кнопку, иконку… чтоб человек не искушенный мог просто тыркнуть и все?….
Отредактировано sovuschka (Апрель 13, 2015 20:13:11)
Офлайн
253
sovuschkaВам уже много раз повторили, под Ubuntu неискушенный человек будет не тыркать непонятно куда в неизвестно что а наберет ls. А искушенный человек тем более в тырканьи не нуждается. Чтобы прочувствовать идеологию unix возьмите и отключите вообще мышку, поверьте, все работают без нее. Она нужна если только при рисовании картинок.
чтоб человек не искушенный мог просто тыркнуть
Отредактировано doza_and (Апрель 13, 2015 20:42:11)
Офлайн