1

ディレクトリ内のすべてのファイルを調べてフラグ付きのファイルを探し、それらを別のプログラムに入力するプログラムを作成しました。それはうまく機能します。私が今やろうとしている唯一のことは、スクリプトをボックスの1つの場所に置き、現在作業中のディレクトリとして現在いるディレクトリを調べることです。現在私がしていることは、作業中のディレクトリにスクリプトを mv し、そこから呼び出すだけですが、これは面倒で、常にスクリプトを cp する必要があります。

これを行うためのもう少しエレガントな方法があることを願っていますか?どんな助けでも大歓迎です。

4

4 に答える 4

7

どうですか

import os

loc = os.getcwd()
于 2014-01-13T21:55:28.077 に答える
1

__ file __オブジェクトは次のような情報を返すことができます:

import os

os.path.dirname(__file__)
于 2014-01-13T21:55:27.493 に答える
0

作業ディレクトリを引数としてスクリプトに渡すことに慣れている場合は、次のアプローチが機能します。

#!/usr/bin/env python
import sys
import os

workingDir = sys.argv[1]
os.chdir (workingDir)

# Your code here
于 2014-01-13T22:01:16.640 に答える
0

ヘルプからの例の完璧な使用のように思えますがos.walk()、それは良い出発点になるでしょう:

import os
from os.path import join, getsize
for root, dirs, files in os.walk('python/Lib/email'):
    print root, "consumes",
    print sum(getsize(join(root, name)) for name in files),
    print "bytes in", len(files), "non-directory files"
    if 'CVS' in dirs:
        dirs.remove('CVS')  # don't visit CVS directories
于 2014-01-13T22:16:33.043 に答える