ソースフォルダにあるすべてのファイルをgunzipするコードを書いています。しかし、私は、gunzippedファイルが存在しない場合はgunzipそれ以外の次のファイルに移動することを確認したい。Gunzip Pythonのソースディレクトリにあるすべてのファイル
source_dir = "/Users/path"
dest_dir = "/Users/path/Documents/path"
for src_name in glob.glob(os.path.join(source_dir, '*.gz')):
base = os.path.basename(src_name)
dest_name = os.path.join(dest_dir, base[:-3])
with: gzip.open(src_name, 'rb') as infile, open(dest_name, 'wb') as outfile:
try:
for line in infile:
print ("outfile: %s" %outfile)
if not os.path.exists(dest_name):
outfile.write(line)
print("converted: %s" %dest_name)
except EOFError:
print("End of file error occurred.")
except Exception:
print("Some error occurred.")
私は、ファイルが存在するかどうかをチェックするためにos.path.exist
を使用しているが、ここでは動作しませんos.path.exist
のように思えます。
問題2については、OSのスケジュールされたジョブユーティリティを使用してください。自分でプログラムしようとする必要はありません。 – glibdud
パート1には疑問はありません。パート2はスタックオーバーフローには広すぎます。 –
@MadPhysicist、gunzippedファイルが存在しない場合はチェックを追加し、gunzipのみ他のwiseは次のファイルに移動します。これをチェックするには? – rnvs1116