2016-05-31 5 views
0

私は以下のコードを持っています。os.mkdirは私の上で動作していません。コンパイルによってエラーは返されませんが、コードを実行してもフォルダは作成されません。os.mkdirが動作していない場合は、

def folder(): 
    timenow = datetime.now().strftime('%Y-%m-%d_%H%M%S') 
    folderpath = os.path.join(currentpath,"folder",str(timenow)) 
    if os.path.exists(folderpath) == False: 
     os.mkdir(folderpath) 
    return 
+1

あなたはコードを投稿できる...いくつかのマイナーなエラー処理と、それに私の刺しですか? –

+0

'currentpath'とは何ですか? – 101

+0

現在のパスはディレクトリ:C:\ PythonScript –

答えて

1

これを試してみてください:mkdirは一つだけのディレクトリを作成することができ、一方、

def folder(): 
    timenow = datetime.now().strftime('%Y-%m-%d_%H%M%S') 
    folderpath = os.path.join(currentpath, "folder", str(timenow)) 
    if not os.path.exists(folderpath): 
     os.makedirs(folderpath) 
     print 'Created:', folderpath 

folder() 

makedirsは、必要なサブディレクトリを作成します。つまり、あなたは例外を見たはずです。

+0

ありがとう!ありがとうございました!なぜ、makedirが昨日同じコードに対してうまく動作するのか、なぜ例外が表示されるのか不思議です。 –

+0

心配はいりません。サブディレクトリがすでに存在していて、最後に 'timenow'ディレクトリを作成していただけです(これはうまくいくはずです)。 – 101

0

はここで誰かがそれを読むことができるように

def folder(): 
    timenow = datetime.now().strftime('%Y-%m-%d_%H%M%S') 
    folderpath = os.path.join(os.getcwd(),"folder",str(timenow)) 
    if not os.path.exists(folderpath): 
     os.makedirs(folderpath) 
     if os.path.exists(folderpath): 
      return (True, folderpath) 
    return (False, folderpath) 

f = folder() 

if f[0]: 
    print '"%s" was successfully created!' % (f[1]) 
else: 
    print '"%s" could not be created, does the folder already exist? Do you have appropriate permissions to create it?' % (f[1]) 
+1

これに感謝しますが、最初のIFがそれを内部で処理していると思いますか? –

+0

フォルダが存在しない場合は作成し、次に作成したフォルダを使用して、作成したフォルダが実際に正常に作成されたことを確認します。あなたがフォルダを作成すると言ったからといって、あなたのシステムに、許可の問題、完全なHDD、不良セクタなど失敗したフォルダの作成を引き起こす可能性のある他の変数はありません。 – AWainb

+0

Gotcha!どうもありがとうございました –

関連する問題