Ahk: run a python script with args
Asked Answered
W

1

1

I have seen this thread (and many others) but I am still not able to retrieve the args in python.

1) With this...

Run Cmd \k "Python  C:\my.py %myvar%"

... a Cmd is open but nothing happens : my.py isn't started.

2) With this...

Run C:\my1.py %myvar% 

... the python script is run but when I retrieve the args with sys.argv, I only get the path of the script not myvar. Len(sys.arg) return 1 so myvar isn't passed down to python.

Warrigal answered 25/12, 2017 at 14:9 Comment(5)
sys.argv[0] will be your script path, your argument should be from sys.argv[1] Inheritor
sys.argv[1] is %myvar% provided that there aren't spacesFerrocene
@pyd @ Jean-François Fabre, thanks for that and sorry for not being more precise. len(sys.arg) returns 1, I don't have a sys.argv[1].Warrigal
seems that your association with .py files is broken (registry issue). You should repair your python installation. see this: #39435189Ferrocene
@Jean-FrançoisFabre, sys.arg works when I start my python script directly in CMD with the args with python C:\myscript.py sometext.Warrigal
W
1

This thread solved it.

commands=
(join&
 python "C:\my.py" "%myvar%"`n
)
Run, cmd /c %commands%  
return

It's also possible to use Run, cmd /k %commands% or Run,%comspec% /k %commands%

Warrigal answered 25/12, 2017 at 15:10 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.