2013-03-06 64 views
0

我運行在命令行下面的腳本在我的Mac本:簡單的Python腳本不能創建目錄

python directory-create.py mkdirs mydirname 

和這裏的腳本directory-create.py:

import os, sys 
def mkdirs(newdir): 
    os.makedirs('/Users/bob/PycharmProjects/server-scripts/test/' + newdir) 
    os.rename('/Users/bob/PycharmProjects/server-scripts/test/' + newdir, '/Users/bob/PycharmProjects/server-scripts/test/www.' + newdir + '.com') 
    print 'test output' 

我運行它,絕對沒有任何反應。沒有錯誤返回,我的打印語句不打印(儘管它打印一個簡單的Hello World腳本)並且沒有創建dirs。我錯過了什麼?

回答

3

您定義了該函數,但實際上並沒有調用它。 再添加一個線後實際調用該函數:

mkdirs("my new dir")

編輯:有似乎是在你的代碼的誤解:你傳遞你想作爲命令行參數來調用函數。

看來你想創建一個名字在命令行中指定的目錄。我重寫了代碼,這樣做:

的用法是: python directory-create.py mydirname

完整的代碼是:

import os 
import sys 

def mkdirs(newdir): 
    os.makedirs('/Users/bob/PycharmProjects/server-scripts/test/' + newdir) 
    os.rename('/Users/bob/PycharmProjects/server-scripts/test/' + newdir, '/Users/bob/PycharmProjects/server-scripts/test/www.' + newdir + '.com') 
    print 'test output' 

if len(sys.argv) < 2: 
    print "No directory name specified!" 
    sys.exit(1) 
else: 
    dirname = sys.argv[1] 
    mkdirs(dirname) 
+0

這就是它!謝謝!現在完美運作。 – yoyodyne 2013-03-06 03:46:11

+0

不客氣:) – Moshe 2013-03-06 03:59:41