Skip to main content
 首页 » 编程设计

python之python 中 string.partition 的良好实践

2025年05月04日12txw1958

有时我会写这样的代码:

a,temp,b = s.partition('-') 

我只需要选择第一个和第三个元素。 temp 永远不会被使用。有更好的方法吗?

换句话说,是否有更好的方法来挑选不同的元素来制作新列表?

例如,我想使用旧列表中的元素 0,1,3,7 创建一个新列表。这 代码将是这样的:

newlist = [oldlist[0],oldlist[1],oldlist[3],oldlist[7]] 

这很丑,不是吗?

请您参考如下方法:

小心使用

a, _, b = s.partition('-') 

有时 _ 用于国际化 (gettext),因此您不希望不小心覆盖它。

通常我会为 partition 这样做,而不是创建一个我不需要的变量

a, b = s.partition('-')[::2] 

这在一般情况下

from operator import itemgetter 
ig0137 = itemgetter(0, 1, 3, 7) 
newlist = ig0137(oldlist) 

如果在循环中使用它,itemgetter 比列表理解更有效