4

Excel を起動し、Python から直接ファイルを開く必要があります。現在私は使用しています:

import os
os.system('start excel.exe file.xls')

しかし、私は望ましい結果を得られません。ローカルの宛先 (ファイルはプログラムと同じフォルダーにあります) からファイルを開きたいのですが、このコードはプログラム ディレクトリではなくホーム (ユーザー) ディレクトリにある同じ名前のファイルを開きます。

4

2 に答える 2

5

問題は、プログラムが配置されているディレクトリが使用されていないことです。現在の作業ディレクトリはです。したがって、プログラムがどのディレクトリにあるか、どのpythonが便利に準備されているかを確認する必要があります。

sys.path[0]

そして、ディレクトリをそれに変更します。

os.chdir(sys.path[0])

または、開きたいファイルのフルパスを指定します

os.system('start excel.exe "%s\\file.xls"' % (sys.path[0], ))

Windowsは通常、ディレクトリ区切り文字としてスラッシュを受け入れますが、コマンドシェル(cmd.exe)は受け入れないため、ここでは円記号を使用する必要があることに注意してください。startこれはWindows固有であるため、ここでハードコーディングすることは大きな問題ではありません。さらに重要なことに、Windowsではファイル名を使用できない"ため、ここでの引用は実際に機能します(Windowsではパスにスペースが含まれている可能性が高いため、引用が必要です)が、このように引用することはお勧めできません。全般的!

于 2012-12-05T10:28:04.040 に答える