すぐにpythonで動作するプログラムを教えて下さい。

環境はWindows 7です。

やりたいことは、あるフォルダーで実行すると、自身のファイルのあるディレクトリのフォルダーけを探し出し、
指定の語彙がある場合にはその文字を置換する物です。

文字列は、「髙」を「低」に、「S」を「s」、「0」を「xx」にするサンプルプログラムを教えて下さい。

例:
「State0」というフォルダーがあった場合には、「statexx」にする。
「髙高」というフォルダーがあった場合には、「低高」にする。

宜しくお願い致します。

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2017/09/18 15:32:40
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:NuL No.1

回答回数1ベストアンサー獲得回数1

ポイント100pt
import os

path = os.getcwd()
files = os.listdir(path)
files_dir = [f for f in files if os.path.isdir(os.path.join(path, f))]
files_dir_copy = list(files_dir)
for i in range(len(files_dir)):
    files_dir[i] = files_dir[i].replace("", "", 1).replace("S", "s", 1).replace("0", "xx", 1)
    os.rename(files_dir_copy[i], files_dir[i])

汚いコードですし、しっかり動くかわかりませんが^^;

id:j4mika

ありがとうございます。
シンプルなコードありがとうございます。
しっかり動きました!
pythonは殆ど使ったことが無く文字コードの変換などややこしい作業があるかと思ったのですがUFT-8で保存すると何もしなくても普通に動いてくれました。

2017/09/18 08:59:50
  • id:deep_one
    『「髙高」というフォルダーがあった場合には、「低高」』???と思ったが『はしご高』だけを変換するのか。
  • id:deep_one
    「フォルダーけを探し出し、」→「フォルダーだけを探し出し、」
  • id:j4mika
    コメントありがとうございます。
    分かりにくい説明ですみませんがその通りです。

    例えば、自身のディレクトリを検索した時、
    「髙田と高井S」というフォルダー名があった場合には、
    「低田と高井s」というフォルダー名に書き換えるスクリプトです。

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません