Форум сайта python.su
Здравствуйте
а кто нить может по пальцам или на пальцах объяснить, как передать значения введёные в гуи в скрипт питона3 и по нажатию кнопки старт или стоп запускать-останавливать скрипт питона3
Your text to link here…
в интернете примеры работы с одним файлом(скриптом) а как с несколькими и передача значений из приложения в скрипт из скрипта вывод в гуи,не понимаю (
Отредактировано Venus (Июль 5, 2017 21:15:01)
Прикреплённый файлы:
SnapShot.png (150,9 KБ)
Офлайн
Вообще вариантов несколько начиная с обычного импорта, exex-а и заканчивая subprocess.Popen-ом
можно написать простой скрипт и вызывать его с параметрами и парсить через sys.argv, getopt или optparse. А можно впихнуть его в функцию и вызывать соотвественно.
пример main.py:
from PyQt4 import QtGui import sys import my_ext # импортируем наш внешний скрипт class MainWindow(QtGui.QWidget): # ГУИ def __init__(self): super().__init__() layout = QtGui.QVBoxLayout(self) self.lineEdit = QtGui.QLineEdit() layout.addWidget(self.lineEdit) okBtn = QtGui.QPushButton('Run script') layout.addWidget(okBtn) okBtn.clicked.connect(self.runScript) self.show() def runScript(self): param = self.lineEdit.text() # получаем данные введенные в лайнЕдит my_ext.myScript(param) # запускаем "внешний" скрипт с параметром app = QtGui.QApplication(sys.argv) mw = MainWindow() sys.exit(app.exec_())
# наш внешний скрипт def myScript(param): print('runing external script func with param', param)
[code python][/code]
Офлайн
PEHDOM
Вообще вариантов несколько начиная с обычного импорта, exex-а и заканчивая subprocess.Popen-омможно написать простой скрипт и вызывать его с параметрами и парсить через sys.argv, getopt или optparse. А можно впихнуть его в функцию и вызывать соотвественно.пример main.py:
Отредактировано Venus (Июль 6, 2017 08:12:08)
Офлайн
Venusэто просто пример, котороый показывает что запущена процедура из другого скрипта.
а тут можно поподробней
def myScript(param):
print('runing external script func with param', param)
———-^вот это что значит ? ^ ——————–^а эт параметры(её не трогать или какието параметры чего то ввести надо?
Venus
я правельно подумал что в def myScript(param):, надо будет прописать чтот типо этого
def myScript(param):
n=int(n)
x=int(x)
y=x+n
print('окошечко с суммой',param)
ну и для разности ток с минусом
def myScript(x, n): ... дальше все как у вас
def runScript(self): n = self.lineEdit_n.text() y = self.lineEdit_x.text() my_ext.myScript(x, n)
[code python][/code]
Офлайн
PEHDOMfrom PyQt4 import QtGui а для qt5 так же выглядит? и почему используется lineEdit? если окошко для ввода и выводы текстедит, так для примера т.е. вместо лайнедит вставить текстедит?
Вообще вариантов несколько начиная с обычного импорта, exex-а и заканчивая subprocess.Popen-омможно написать простой скрипт и вызывать его с параметрами и парсить через sys.argv, getopt или optparse. А можно впихнуть его в функцию и вызывать соотвественно.пример main.py:
Офлайн
VenusQtGui из PyQt4 в пятерке разделен на три модуля QtGui, QtPrintSupport и QtWidgets, учитывайте это. Узнать что где можно из офф документации.
from PyQt4 import QtGui а для qt5 так же выглядит?
Venusв Qt QLineEdit - однострочное окно ввода, QTextEdit - моногострочное окно ввода.
и почему используется lineEdit? если окошко для ввода и выводы текстедит,
[code python][/code]
Офлайн
PEHDOM
PEHDOMа тут в личку писать низя? можно вам на почту напишу
Офлайн
VenusПоходу нельзя… попробуйте на почту.
а тут в личку писать низя? можно вам на почту напишу
[code python][/code]
Офлайн
PEHDOMпопробовал, получили?
Офлайн
нет, хотя сам себе отправил нормально….
[code python][/code]
Офлайн