我正在Mac上的命令行运行以下脚本:
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'
我跑了,绝对没有任何反应。没有错误返回,我的print语句没有打印(虽然打印时使用简单的Hello World脚本)并且没有创建dirs。我错过了什么?
答案 0 :(得分: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)