質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1645閲覧

pythonでフォルダ内のファイルを別フォルダに移動させたい。

colorful_39

総合スコア20

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/03/28 14:24

pythonでフォルダ内のファイルを読み取って
それぞれを別フォルダに移動させたいのですが..
①「特定条件のファイルの取得」と
②「移動のさせ方」がわかりません。

「拡張子別のファイルの取得」と
「ファイルの移動方法」はわかったのですが
代入?の方法がわかりません。

どなたかご教示くださいませんでしょうか?

やりたいこと

元フォルダ
・01.pdf
・0002.xlsx
・00030004.xlsx

・pdfの取得
・4文字以下のxlsxの取得
・5文字以上のxlsxの取得

移動先フォルダA
・01.pdf
移動先フォルダB
・0002.xlsx
移動先フォルダC
・00030004.xlsx

やってみたこと

以下のコードで「拡張子別のファイルの取得」を行い
○○の部分に代入できたら、ファイルを移動させられる
のではと考えたのですが出来ませんでした。

import shutil
import glob

files = glob.glob("C:\Users\元フォルダ*.pdf")
for file in files:
〇〇 = file

shutil.move('〇〇', 'C:\Users\移動先フォルダA')

環境

・windows10
・python 3.x

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

○○という「変数」には、ちゃんと対象のファイルの「名前の文字列」が入っていまるはず。でも、'○○' としてしまうと、その「変数名そのもの」の文字列がshutil.moveに渡ってしまいます。

「''」を付けずに、

python

1shutil.move(〇〇, 'C:\Users\移動先フォルダA')

とすればいいと思いますよ。

投稿2020/03/28 14:49

TakaiY

総合スコア12765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

colorful_39

2020/03/28 18:09

できました! 有難うございます。 ついでに、下記の方法で「〇文字以上のxlsxの取得」も自己解決できました。 files = glob.glob("C:\Users\元フォルダ\*.pdf") ↓ files = glob.glob("C:\Users\元フォルダ\[0-9][0-9][0-9][0-9]*.xlsx")
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問