Форум сайта python.su
Привет, подскажите, пожалуйста, как сделать так, что бы bat файл не только запускал скрипт, но и назначал в него переменную?
Например, в скрипте есть пустая переменная name = ‘'
При открытии файла 1.bat скрипт запускается с переменной name = ’1'
При открытии файла 2.bat скрипт запускается с переменной name = ‘2’
Есть вариант при запуске батника сохранять эту переменную в текстовый документ и вытаскивать из него при старте. Но не хочется создавать лишние файлы. Надеюсь, есть более простой вариант
Заранее спасибо
Отредактировано napuznik (Сен. 21, 2019 01:55:16)
Офлайн
napuznik а что вам мешает явно передавать аргумент?
start python.exe scripy.py %~n0
[code python][/code]
Отредактировано PEHDOM (Сен. 21, 2019 14:45:41)
Офлайн
Если вам не жалко создавать 1.bat 2.bat то что вам мешает сделать 1.py и 2.py
А в них написать
1.py
var=1
var=2
Офлайн
PEHDOMСпасибо, звучит годно
napuznik а что вам мешает явно передавать аргумент?
Офлайн
doza_andОдин скрипт должен запускаться отдельно для нескольких процессов. В данном случае изменяется только имя, поэтому нет смысла плодить скрипты с одинаковым кодом. Но все равно спасибо за ответ
Если вам не жалко создавать 1.bat 2.bat то что вам мешает сделать 1.py и 2.pyА в них написать 1.py
Офлайн
napuznikКаждый запуск скрипта это отдельный процесс. Иначе и не бывает.
Один скрипт должен запускаться отдельно для нескольких процессов
napuznikА там не будет одинкового кода. Посмотрите что такое импорты.
нет смысла плодить скрипты с одинаковым кодом.
from code import f f("1")
Отредактировано doza_and (Сен. 23, 2019 20:19:27)
Офлайн
doza_andПростите, не понял про “А там не будет одинакового кода”… Возможно, я не ясно выразил суть. Должен быть только один скрипт, в котором изначально прописана пустая переменная. Допустим:
Офлайн
Я не настаиваю на предлагаемом решении а хочу показать многообразие возможностей. Вот это при решении задачек очень вредно:
napuznik
Должен быть только один скрипт
napuznikПочему это так все должно быть? Не нужна эта зашоренность. Реально вы даете две команды, ну может мышкой тычете, хотите получить два результата.
Бат-файл должен отправить в этот скрипт
Офлайн
doza_andспасибо!
Я не настаиваю на предлагаемом решении а хочу показать многообразие возможностей. Вот это при решении задачек очень вредно:
Офлайн