0

Pythonを使用して、次のような値を含むファイル名の名前を変更しようとしています。 ~test1~test2~filename.csv

ファイルの名前をfilename.csvに変更したいと思います。チルダは最初の2つの単語の区切り文字であり、フィナーレファイル名にそれらの単語を含めたくありません。これらの単語は変数です。どんな援助もいただければ幸いです。ありがとう!

4

2 に答える 2

2

ファイル名ごとに単語が変わるため、パターンに一致するファイルをディレクトリで検索するのが最適です。globあなたのためにそれをします。

このようなディレクトリがある場合:

.
├── ~a~b~c.csv
├── file.csv
├── ~foo~bar~f1.csv
└── hello.txt

次に、これを実行します。

import os, glob
for f in glob.glob('~*~*~*.csv'):
    os.rename(f,f.split('~')[-1])

あなたに与えるでしょう:

.
├── c.csv
├── f1.csv
├── file.csv
└── hello.txt
于 2012-11-06T02:27:48.083 に答える
1
import os

myfilename = "~test1~test2~filename.csv"

for filename in os.listdir("."):
   if filename == myfilename:
       myfilename_new = myfilename.split("~")[-1]
       os.rename(filename, myfilename_new)

~test1~test2~filename.csvもちろん、元のファイルがこのpythonスクリプトが実行する「現在の/同じディレクトリ」に存在すると仮定します。

これがあなたの学習の旅に役立つことを願っています!

Pythonへようこそ!

于 2012-11-06T01:34:20.370 に答える