我是蟒蛇的新手。考虑返回3元组的函数str.partition()。如果我只对这个元组的元素0和2感兴趣,那么从这样的元组中只选择某些元素的最佳方法是什么?
我现在可以做:

# Introduces "part1" variable, which is useless
(part0, part1, part2) = str.partition(' ')

或:
# Multiple calls and statements, again redundancy
part0 = str.partition(' ')[0]
part2 = str.partition(' ')[2]

我想做这样的事情,但不能:
(part0, , part2) = str.partition(' ')
# Or:
(part0, part2)   = str.partition(' ')[0, 2]

最佳答案

下划线通常用作您不需要的东西的名称,因此类似这样的东西可以工作:

part0, _, part2 = str.partition(' ')

在这种情况下,您可以这样做,但这不是一个很好的解决方案:
part0, part2 = str.partition(' ')[::2]

一个更深奥的解决方案:
from operator import itemgetter
part0, part2 = itemgetter(0, 2)(str.partition(' '))

关于python - 如何选择函数返回的x元组的某些元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1502470/

10-11 20:13