如何访问字符串列表中的字符?

时间:2018-02-06 20:16:45

标签: python string list

是否有直接的方式(不使用循环)访问组成列表的字符串的不同字符?

例如:

L=['hola','que','tal']

我如何直接访问例如第三个字符串的第二个元素? [即'一个&#39]。在同一行中,我如何直接访问每个字符串的前两个元素以创建新列表

S=['ho','qu','ta']

我希望在第一种情况下类似L[2][1],类似L[:][:2],但显然不正确。

5 个答案:

答案 0 :(得分:2)

您的第一种方法是正确的,这确实是您如何索引多维列表

>>> L[2][1]
'a'

第二个问题可以使用列表理解中的切片来解决

>>> [i[:2] for i in L]
['ho', 'qu', 'ta']

答案 1 :(得分:0)

你可以这样做:

[a[:2] for a in L]
>>> L
['hola', 'que', 'tal']
>>> [a[:2] for a in L]
['ho', 'qu', 'ta']

我们在列表L上进行迭代,对于每个元素,我们得到前两个字符。

答案 2 :(得分:0)

使用列表理解:

L=['hola','que','tal']
s = [i[:2] for i in L]

这会给你:

['ho', 'qu', 'ta']

答案 3 :(得分:0)

如果您希望新列表中每个字符串的前两个元素使用:

L=['hola','que','tal']
S = [x[:2] for x in L]

答案 4 :(得分:0)

没有使用循环(等待有人证明我错了),没有办法获得输出。您可以使用map() 隐藏隐藏循环。

L=['hola','que','tal']
print(map(lambda x: x[:2], L))
#['ho', 'qu', 'ta']