【问题标题】:How to skip the parameters of a function in python?如何在python中跳过函数的参数?
【发布时间】:2020-12-07 06:37:26
【问题描述】:

我试图在调用函数时跳过参数。你能帮我怎么做吗?

例子:

我必须调用以下具有 3 个参数的函数:

send_mail(audit_df, LOG_FILE, Duration)

我必须调用上面的函数来跳过第一个和第三个参数。我该怎么做?

【问题讨论】:

  • 这个函数是你写的,还是别人提供的?
  • 我正在写这个函数
  • 然后阅读“Python 默认参数”。
  • 像这样更改它:send_mail( LOG_FILE,audit_df=DEFAULT_VALUE, Duration=DEFAULT_VALUE) 并使用 DEFAULT_VALUE 忽略它们
  • 如果您正在编写该函数,请使用带有默认值的关键字参数。但这只是基础

标签: python python-3.x function


【解决方案1】:

您可以用“None”代替参数。

这将使 python 假设它是 Nothing 并且什么也不做。

【讨论】:

  • Python 会将None 分配给变量,但在那之后,由代码来做。不是它什么都没有,python 什么都不做,它分配了None,如果代码不处理这种情况,就会出现异常。
【解决方案2】:

这可以通过两种方式使用

  1. **kwargs
  2. 可选参数

详情请看下面的答案

Multiple optional arguments python

【讨论】:

    【解决方案3】:

    您可以设置参数的默认值。我不知道什么对你有用,所以我只是将它们设置为None

    def send_mail(audit_df=None, log_file=None, duration=None):
        do all the things
    

    打电话时

    send_mail(log_file="myfile")
    

    如需简单阅读,请参阅文档的 Function definitions 部分。

    【讨论】:

      猜你喜欢
      • 2011-07-20
      • 2021-12-23
      • 2015-12-07
      • 2016-02-02
      • 2010-11-07
      • 2012-04-10
      相关资源
      最近更新 更多