我可以在Python中使用变量名"type"作为函数参数吗?

bod*_*ydo 20 python

我可以type用作python函数参数的名称吗?

def fun(name, type):
    ....
Run Code Online (Sandbox Code Playgroud)

jat*_*ism 35

你可以,但你不应该.使用内置命令的名称并不是一个好习惯,因为它们会覆盖该范围内置内置的名称.如果必须使用该单词,请对给定的上下文稍作修改.

虽然对于没有使用的小项目可能无关紧要type,但最好不要习惯使用关键字/内置函数的名称.在Python的风格指南提供了这一点,如果你绝对必须使用带有关键字冲突名称的解决方案:

single_trailing_underscore_:由约定用于避免与Python关键字冲突,例如

  • 顺便说一句,因为类型是如此通用的,经常被过度使用的单词,在"car_type"或"animal_type"中添加一个限定符会使得更加自我记录的程序无论如何 (13认同)
  • 哈哈,那是@rbp的笑话,对吗?...对? (4认同)

小智 7

你可以,那没关系.即使不影响内置函数的建议很重要,但如果标识符很常见,它会更强烈地应用,因为它会增加混淆和冲突.它不会出现类型会导致混淆(但你会比其他人更了解),我可以使用你所拥有的.

  • +1提及潜在的混淆.我认为这比可能影响内置的技术问题要大得多:有人阅读代码(甚至可能是编写代码的人)可能希望`type`引用内置函数.相比之下,意外遮蔽内置类型的可能性似乎很小:它并没有在实际代码中经常使用. (3认同)

Ign*_*ams 5

您可以使用任何非关键字作为标识符(当然,只要它是有效的标识符)。type不是关键字,但使用它会影响type内置。