我正在用 python 制作一个任务管理器,它使用 json 文件作为存档,并保存用户提供给程序的信息,我制作了一个具有不同功能的 python 文件来管理这些输入。
然后,当收集信息时,我创建了一个函数,将这些信息添加到 json 文件中
import json
def setTitle():
#collects user's input
appendJson(task=userInput)
def setDescription():
#collects user's input
appendJson(description=userInput)
def appendJson (task, description):
#generate the json item
当我运行代码时,它给了我一个错误,因为我没有提到其他参数。 所以基本上我应该写
appendJson(task=userInput, description=bla bla)
,但问题是如果我写了它,代码就不起作用。
那么有没有办法在函数调用中省略第二个参数呢?
如果您有不明白的地方请在评论中告诉我 谢谢<3
如果您希望能够调用函数而不必每次都提供每个参数,则可以使用关键字参数:
def appendJson(task, description=None):
#generate the json item
在这种情况下,第一个参数将始终被解释为 task 并且您可以选择通过appendJson(task, description="randomdescription") 提供 description。
如果您想要两个参数都是可选的,则可以将两个参数都设为关键字参数:
def appendJson(task=None, description=None):
#generate the json item
修好了,
为参数设置默认值,如下所示:
def appendJson(task="default value", descripiton="defaultvalue"):
您也可以使用
def appendJson(task="Hello World", descripiton=None):