我在使用argparse从命令行调用函数时遇到问题。我只想让它执行脚本中定义的一个函数。你知道吗
import os
import shutil
import getpass
import argparse
user = getpass.getuser()
copyfolders = ['Favorites']
parser = argparse.ArgumentParser()
parser.add_argument('e', action='store')
parser.add_argument('i', action='store')
args = parser.parse_args()
def exp(args):
for folder in copyfolders:
c_path = os.path.join("C:", "/", "Users", user, folder)
l_path = os.path.join("L:", "/", "backup", folder)
shutil.copytree(c_path, l_path)
def imp(args):
for folder in copyfolders:
l_path = os.path.join("L:", "/", "backup", folder)
c_path = os.path.join("C:", "/", "Users", user, folder)
shutil.copytree(l_path, c_path)
当我试图用一个论点来称呼它时,我得到:
error the follow arguments are required: i
不管通过什么论证。你知道吗
这里有几个问题:
action='store_true'
将其设置为布尔变量值,然后定义当该变量为真(或假)时要执行的操作这就是最终对我起作用的原因:
另外,请确保在缩写参数名称前面加上
-
,在全名前面加上。你知道吗
相关问题 更多 >
编程相关推荐