我想做的是,当我输入一个特定的参数时,它会启动一个函数,这是否可以通过 argparse
实现。因此,如果我在我的应用程序中点击添加参数,它会触发“添加”功能。
parser = argparse.ArgumentParser(description='to do list')
parser.add_argument('-a', '--add', help='add an item to the todo list')
parser.add_argument('-r', '--remove',)
parser.add_argument('-l', '--list',)
args = parser.parse_args()
def add(args):
conn = sqlite3.connect('todo.db')
c = conn.cursor()
c.execute("INSERT INTO todo VALUES (args.add, timestamp)")
最佳答案
当然,您可以只使用add
作为type
参数:
def add(args):
conn = sqlite3.connect('todo.db')
c = conn.cursor()
c.execute("INSERT INTO todo VALUES (args, timestamp)")
parser.add_argument('-a', '--add', type=add)
如果这还不够好,您可以子类化 argparse.Action
并且几乎可以让 argparse 在遇到参数时做任何您想做的事情。
关于python - 通过 arg 执行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19251204/