Python 对 main 的命令行调用不会进入 main 函数
Python command line call to main does not go into main function
我有一个 python 文件,其主要功能如下:
if __name__ == '__main__':
args = docopt(__doc__)
print('source: %s' % args['--src'])
print('target: %s' % args['--tgt'])
现在当我调用这个函数时:
python test.py --src file1 --tgt file2
我得到:
Usage:
test.py --src=<file> --tgt=<file>
Options:
-h --help Show this screen.
--src=<file> src
--tgt=<file> tgt
但是主函数逻辑并没有被调用。如何解决这个问题?
我试过了:
python test.py --src=file1 --tgt=file2
但我得到了相同的结果。
检查你的文档字符串。我认为问题是由于 Usage
和 Options
部分之间缺少换行符造成的。
我试过这个文档字符串,它运行良好:
"""
Usage:
test.py --src=<file> --tgt=<file>
Options:
-h --help Show this screen.
--src<file> src
--tgt=<file> tgt
"""
from docopt import docopt
if __name__ == '__main__':
args = docopt(__doc__)
print('source: %s' % args['--src'])
print('target: %s' % args['--tgt'])
我有一个 python 文件,其主要功能如下:
if __name__ == '__main__':
args = docopt(__doc__)
print('source: %s' % args['--src'])
print('target: %s' % args['--tgt'])
现在当我调用这个函数时:
python test.py --src file1 --tgt file2
我得到:
Usage:
test.py --src=<file> --tgt=<file>
Options:
-h --help Show this screen.
--src=<file> src
--tgt=<file> tgt
但是主函数逻辑并没有被调用。如何解决这个问题?
我试过了:
python test.py --src=file1 --tgt=file2
但我得到了相同的结果。
检查你的文档字符串。我认为问题是由于 Usage
和 Options
部分之间缺少换行符造成的。
我试过这个文档字符串,它运行良好:
"""
Usage:
test.py --src=<file> --tgt=<file>
Options:
-h --help Show this screen.
--src<file> src
--tgt=<file> tgt
"""
from docopt import docopt
if __name__ == '__main__':
args = docopt(__doc__)
print('source: %s' % args['--src'])
print('target: %s' % args['--tgt'])