返回两个元组时如何仅使用一个参数

时间:2019-06-13 12:23:49

标签: python

函数os.path.split例如返回头和尾的元组。 我必须指定元组的两个部分,但是如果我只需要其中一个,则pylint会抱怨未使用的参数。在python中执行此操作的正确方法是什么?

(head, tail) = os.path.split("a/b/c")

3 个答案:

答案 0 :(得分:4)

您可以使用_

head, _ = os.path.split("a/b/c")

这是大多数IDE用来解释程序员对该值不感兴趣的约定,但是_是一个合法的变量名,它将指向被“忽略”的值:

>>> x = (1, 2, 3, 4)
>>> _, *middle, _ = x
>>> _
4

如果您拥有两个以上的值,您甚至可以使用类似这样的东西:

>>> x = (1, 2, 3, 4)
>>> x
(1, 2, 3, 4)
>>> first, *middle, last = x
>>> first
1
>>> middle
[2, 3]
>>> last
4

因此,您仍然可以使用_来“忽略”模式的某些部分,例如:

>>> x = (1, 2, 3, 4)
>>> x
(1, 2, 3, 4)
>>> _, *middle, _ = x
>>> middle
[2, 3]

答案 1 :(得分:3)

执行此操作的标准方法是使用_

例如:

head, _ = os.path.split("a/b/c")

答案 2 :(得分:1)

使用下划线指示期望使用变量,但您不想使用它。

例如使用:

   head, _ = os.path.split("a/b/c")