Разница в консоли Python3 и программном коде Python3
Я пишу программу на python3.6 под PyCharm в Ubuntu 18.04. Я хочу открыть jpg-файл с конкретными координатами окна. Единственный возможный способ сделать это - использовать eog и wmctrl.
Я не нашел средство просмотра изображений, которое может разместить jpg-файл именно там, где я хочу (не eog, qiv, .. или другие, они пропускают эти опции)
Поэтому я использую eog filename.jpg
всплыть. Тогда wmctrl-command
разместить его на экране
Делаем на консоли в Unix (Ubuntu):
eog filename.jpg
-> Эог выскакивает по центру.
wmctrl -a filename.jpg -e 0,10,0,600,2000
-> Поместите это, где я хочу
(Неважно, из какого каталога я вызываю eog, это также может быть каталог /home/user/......(filename.jpg). Для wmctrl в каждом случае достаточно только filename.jpg. "wmctrl -r имя файла....... работает)
Делая то же самое с Pythone-консоли, он тоже работает отлично.
Но: когда я делаю некоторые из программ с
cmd = "eog filename.jpg"
os.system(cmd)
(или же os.system("cmd")
, всплывающее окно файла по центру экрана работает
НО:
cmd = "wmctrl -a filename.jpg -e 0,10,0,600,2000"
os.systems(cmd)
-------> ничего не происходит, как будто os.system()
команда игнорируется
Любая идея, что может быть не так, ценится!
(Сначала я подумал, что у меня проблемы с именем файла и конкретными символами, но это также происходит с простыми именами, такими как test.jpg или около того.)
на Python-консоли я также использую cmd =...........
а такжеos.system(cmd)
после "import os"
1 ответ
Извините: я решил это сам.
Для запуска wmctrl-команды нужна только пауза!
время импорта
time.sleep(2) делает работу (может быть, 1 секунды тоже достаточно)
(делая это на консоли, вы набираете паузу автоматически)