|
Python exec
|
|||
---|---|---|---|
#18+
Код: python 1.
здравствуйте, нашёл, что можно так прописать, но не понял, как оформлять файл для того, чтобы не плодить много файлов, а чтобы было всё в одном, чтобы в одном файле было несколько процедур, как их оформить и как вызвать нужную? и судя по названиям globalz, localz это вроде не оба в файле, можно подробностей? спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
01.01.2022, 22:23 |
|
Python exec
|
|||
---|---|---|---|
#18+
катастрофа, Написание модулей/библиотек и выполнение скриптов (их вызов, а так-же выполнение программ/приложений) - это всё-таки довольно разные вещи, если я правильно понял вопрос то это немного для другого exec предназначен именно для выполнения модулей класса скрипт для загрузки модулей типа package или libriary (и до целых фреймворков) содержащих дефиниции функций/методов (часто по классам) существует import вполне можно при желании прописать все дефиниции в одном mytestpackage.py файле через кучу отдельных def.... и потом после импорта вызывать их сколько угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2022, 08:27 |
|
Python exec
|
|||
---|---|---|---|
#18+
vikkiv, разобрался я, одним словом можно файл MsgBoxOK.py оформлять как захочешь, потом и считывать согласно того как оформил например знать, что между #start MsgBoxOK и #end MsgBoxOK то, что тебе нужно, это выход я то думал, что можно также оформит её как функцию, в том числе и с параметрами, например def df_loc(loc_text): и вызывать её но с файла или оформить как то другим способом, словарь например....... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2022, 12:00 |
|
Python exec
|
|||
---|---|---|---|
#18+
но оказалось, что то, что сделано в этом запускаемом файле не передаётся обратно и как можно решить? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2022, 19:08 |
|
Python exec
|
|||
---|---|---|---|
#18+
ну спасает, что можно сделать через буфер обмена, но это костыли - надо очистить последний её объект Код: python 1.
не подходит, как удалить последний объект буфера обмена? спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2022, 22:31 |
|
Python exec
|
|||
---|---|---|---|
#18+
катастрофа, зачем эти костыли и натягивание совы на глобус, есть стандартные подходы, допустим в простейшем примере у тебя в файле mytestmodule .py (лежащем в current working directory) определены какие-то функции: Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
тогда в текущем скрипте их можно вызвать так: Код: python 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 00:18 |
|
Python exec
|
|||
---|---|---|---|
#18+
vikkiv, спасибо за ответ, то что можно модулем сделать я знал, но меня пугало то, что я думал, что его нужно устанавливать..........сорри, это для меня новый опыт и пока комом, я действую так, тестирую: Код: python 1. 2. 3.
а в файле MsgBox.py у меня простейший MsgBoxYesNo: Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
пока получаю ошибку Traceback (most recent call last): File "C:\pythonProject\sudrf.ru1.py", line 2, in <module> import MsgBox as mt File "C:\pythonProject\MsgBox.py", line 1 def MsgBoxYesNo(a:title,b:prompt): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SyntaxError: import * only allowed at module level в чём я ошибаюсь, и как мне потом запускать с параметрами title и prompt? спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 01:45 |
|
Python exec
|
|||
---|---|---|---|
#18+
ага, он ведь кроме того что пишет в явном виде что за ошибка которую стоило-бы прочитать, понять, отформатировать и исправить либо переместив эти строчки в нужное место либо изменив форму импорта ещё по идее должен подчёркивать эту ошибку в соответствующей строке в UI лучше всего будет начать от простого к сложному вместо того чтобы сразу лезть в самое пекло без должного инструментария. ну и вспомнить один из вариантов процесса дебаггинга - например убирать из кода строки пока не найдётся ошибка чтобы хотя-бы примерно определить где-же проблема. кроме того приведённый код больше похож на интерактивную часть интерфейса - т.е. кусок программы выполняющий какие-то действия, а не просто расчётная функция для вызова, при написании приложений всё-таки применяются немного другие подходы решающие проблемы параллельности и блокировок (ожидания ввода например). я такими вещами не занимаюсь, у нас на проектах специфика больше в сторону простого набор команд и операций для обработки данных из получаемых датасетов с выдачей результата куда-то поэтому вряд-ли смогу что-то посоветовать, т.к. это совсем другая область применения питона (front-end) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 09:42 |
|
Python exec
|
|||
---|---|---|---|
#18+
п.с. то как указаны title и prompt - это очевидно что не параметры, а что-то другое, которое надо-бы ещё и задать для начала, если это параметры то пишется по другому. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 10:40 |
|
Python exec
|
|||
---|---|---|---|
#18+
vikkiv, взял пример попроще с инета: Код: python 1. 2. 3. 4. 5. 6.
и на основе его сделал, спасибо не так страшен чёрт как его рисуют........ ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 17:20 |
|
|
start [/forum/topic.php?fid=23&msg=40124443&tid=1459386]: |
0ms |
get settings: |
13ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
73ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
218ms |
get tp. blocked users: |
1ms |
others: | 355ms |
total: | 692ms |
0 / 0 |