前提
windowsで制作
pythonを使って、デスクトップ上にあるファイルとフォルダをすべて別のフォルダに移動するプログラムを制作している。
仕様として、移動先のフォルダは今日の日付をフォルダ名とするフォルダを作成し移動したい。
実現したいこと
- os.makedirsを使ってpathfinで示しているフォルダを正常に作成したい
発生している問題・エラーメッセージ
NotADirectoryError: [WinError 267] ディレクトリ名が無効です。: 'd:./Desktop_trash/2022:08-25'
該当のソースコード
python
1#デスクトップ上のフォルダとファイルの有無をチェック 2import shutil 3import os 4import datetime 5from time import strftime 6 7#デスクトップのパス 8path = 'c:./Users/?????/Desktop' #???は各自で変更してください 9#移動先のフォルダのパス 10path2 = 'd:./Desktop_trash' 11 12#デスクトップ上の要素をリストとして受け取る 13files = os.listdir(path) 14files.sort() 15#確認用 16print(files) 17 18#リストの長さを受け取る 19listsize = len(files) 20#確認用 21print(listsize) 22 23#listsizeが1以上の処理 24if listsize > 0: 25 #日付の取得 26 today = datetime.date.today() 27 today = today.strftime('%Y:%m-%d') 28 #確認用 29 print(today) 30 #パスの結合 31 pathfin = path2 + '/' + today 32 #確認 33 print(pathfin) 34 #フォルダの作成 35 os.makedirs(pathfin ,exist_ok=True)
試したこと
- パスの書き方を変えた
- os.mkdirでのフォルダ作成を試してみた
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
> path = 'c:./Users/?????/Desktop' #???は各自で変更してください
> path2 = 'd:./Desktop_trash'
: の次の . はどういう意図でしょうか。
回答2件
あなたの回答
tips
プレビュー