質問するログイン新規登録
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

833閲覧

python3で日付の名前のファイル内にさらにファイルを作成する方法

Nao1117

総合スコア17

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2018/09/12 18:11

0

0

まず以下のコードで日付と時間が記載されたファイルが作成できました。

from datetime import datetime as dt
import os

tdatetime = dt.now()
tstr = tdatetime.strftime('%y%m%d_%H%M%S')
os.mkdir(tstr)

次に作成したファイル(例:180913_123456)内にさらにファイル(hoge)を作成したいのですがどのようにすればよいか分かりません。

os.mkdir('./' tstr '/hoge')
はエラーを吐きました

またその後
./180913_123456/hogeに画像を保存したり、逆に呼び出したりするときの
パスの指定の仕方も教えていただけると幸いです。

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

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

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

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

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

guest

回答2

0

os.mkdir(tstr)
でできるのはディレクトリです。
あなたのやりたいことはディレクトリを作ってその中にディレクトリを作る、ということでしょうか
それなら、
0. os.mkdir(tstr) を実行
0. カレントディレクトリをtstrに移動
0. もいちどos.mkdir(hoge)を実行
0. カレントディレクトリをhogeに移動
0. いろいろファイルを作る

という手順になります

投稿2018/09/12 22:16

y_waiwai

総合スコア88180

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

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

Nao1117

2018/09/12 22:20

回答ありがとうございます。 カレントディレクトリを変更せずに行うことはできませんか?
y_waiwai

2018/09/12 22:23

os.mkdir('./' + tstr + '/hoge') あるいは os.mkdir( tstr + '/hoge') ではどうなりますか? エラーがでると言うなら、エラーメッセージも提示しましょう
Nao1117

2018/09/12 23:18

mkdirとmakedirsの使い分けでのミスでした。 ご協力ありがとうございました。
guest

0

ベストアンサー

-参考URL-
Pythonでディレクトリ(フォルダ)を作成するmkdir, makedirs
Pythonでパス文字列からファイル名・フォルダ名・拡張子を取得、結合

-引用-

  • 新しいディレクトリを作成: os.mkdir()
  • 深い階層のディレクトリまで再帰的に作成: os.makedirs()

-作り方-
フォルダ名1と2が事前に取得生成出来るならtstrにまとめて、1回で一気に作る方がシンプルのようです。

tstr = フォルダ名1 + 区切り文字 + フォルダ名2
os.makedirs(tstr)

※OSによってフォルダ名1と2の区切り文字が変わるので参考URLで確認してみてください。
(Pythonはまだ使ったこと無いのであしからず。)

投稿2018/09/12 18:59

opyon

総合スコア1009

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

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

Nao1117

2018/09/12 23:19

mkdirとmakedirsの使い分けで突破できました! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問