我可以使用命名参数作为变量在python中调用函数吗?

Fathey Abdel大满贯

例如

username_type = 'email'

def get_user_by(email=None, username=None):
    if email:
        return user.get_by_email(email)
    elif username:
        return user.get_by_username(username)

get_user_by(username_type = username)

当然这行不起作用,get_user_by(username_type = username)但是我想要这样的东西才能起作用

我不知道我会从哪种类型获取用户,但是我想要基于变量的命名参数

凯尔伍德

您可以使用**运算符将关键字参数字典传递给函数字典的键是函数中的参数名称。

在这种情况下,可能是:

get_user_by(**{username_type: username})

如果变量username_type具有值,'email'则用户名将get_user_by作为关键字参数接收email

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Go中可以使用命名参数调用函数吗?

如果基类作为参数调用,我可以使用派生类函数吗?

我可以使用变量的值作为函数的参数名称吗?

MyPy类型提示使用命名参数定义的函数,但可以使用** kwargs吗?

我可以使用void *作为函数的参数吗?

可以使用命名参数火花提交吗?

我可以使用一些参数引用命名子例程吗?

在bash脚本中,我们可以使用命令行参数设置变量值吗?

Python3:可以使用命名函数定义进行列表理解吗?

我可以使用 PHP 匿名函数作为参数,而不将函数分配给变量吗?

我可以使用其他函数的类型信息作为Python中的返回类型吗?

我可以使用参数中的数据设置 python 变量吗?

在Python中,我可以从main函数中调用变量-使用全局变量吗?

OBJ-C,我可以使用协议作为函数参数的参数类型吗?

在CF中,我可以使用变量作为名称来调用自定义标签吗?

可以使用成员函数调用作为默认参数吗?

是否可以使用变量来调用函数作为参数javascript

我可以使用 std::string 变量作为运算符的参数吗?

是否可以使用命名变量在 groovy 中在闭包中打印命名组?

我可以使用成员函数作为EnumWindows的第一个参数吗

我可以使用std :: string * argv作为主要函数参数吗?

我可以使用类型作为值(或从构造函数参数正确推断通用类类型)吗?

Typescript:可以使用enum作为函数参数类型吗?

swift while循环可以使用函数作为参数吗?

我可以使用函数参数来创建全局变量吗?

是否可以使用逻辑语句作为参数来调用python函数?

休眠-我可以混合使用命名参数和位置参数吗?

我可以在std :: function模板签名类型参数中使用命名参数吗?

我可以使用 IEnumerator 作为更新函数吗?