336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



import os;

os.system('"C:\\Temp\\a b c\\Notepad.exe"');



=============



subprocess.call will avoid problems with having to deal with quoting conventions of various shells. It accepts a list, rather than a string, so arguments are more easily delimited. i.e.


import subprocess

subprocess.call(['C:\\Temp\\a b c\\Notepad.exe', 'C:\\test.txt'])



=============



Here's a different way of doing it.


If you're using windows the following acts like double-clicking the file in Explorer, or giving the file name as an argument to the DOS "start" command: the file is opened with whatever application (if any) its extension is associated.


filepath = 'textfile.txt'

import os

os.startfile(filepath)



Example:


import os

os.startfile('textfile.txt')


This will open textfile.txt with notepad if notepad is associted with .txt files.



=============



The outermost quotes are consumed by Python itself, and the Windows shell doesn't see it. As mentioned above, Windows only understands double-quotes. Python will convert forward-slashed to backslashes on Windows, so you can use


os.system('"C://Temp/a b c/Notepad.exe"')


The ' is consumed by Python, which then passes "C://Temp/a b c/Notepad.exe" (as a Windows path, no double-backslashes needed) to CMD.EXE



=============




At least in Windows 7 and Python 3.1, os.system in Windows wants the command line double-quoted if there are spaces in path to the command. For example:


  TheCommand = '\"\"C:\\Temp\\a b c\\Notepad.exe\"\"'

  os.system(TheCommand)


A real-world example that was stumping me was cloning a drive in Virtual box. The subprocess.call solution above didn't work because of some access rights issue, but when I double-quoted the command, os.system became happy:


  TheCommand = '\"\"C:\\Program Files\\Sun\\VirtualBox\\VBoxManage.exe\" ' \

                 + ' clonehd \"' + OrigFile + '\" \"' + NewFile + '\"\"'

  os.system(TheCommand)




=============




pip3 install pypiwin32

import win32api 


try: win32api.WinExec('NOTEPAD.exe') # Works seamlessly

except: pass



'Python > Python 3.x' 카테고리의 다른 글

while automating, python selenium Chrome filenotfound exception occures  (0) 2015.09.23
converting .py to .exe  (0) 2015.09.23
timer_with_Lock.py  (0) 2015.05.08
asyncWrite.py  (0) 2015.05.08
threading  (0) 2015.05.08
Posted by af334