[英]How to split a python string based on indices?
我需要遍历一个列表,并为该列表中的每个元素创建两个子列表:我当前元素之前的 2 个元素的子列表和之后的 2 个元素的子列表。
for word in line.split():
\\ create sublist of the two words before word
\\ create sublist of the two words after word
我不知道如何做到这一点,并希望得到帮助。 我知道您通常可以执行 list[:5] 但我不确定如何选择与您当前索引相关的元素。
您可以使用enumerate()
来迭代索引和元素,然后使用切片。
words = line.split()
for i, word in enumerate(words):
print("word:", word)
print("before:", words[i-2:i])
print("after:", words[i+1:i+3])
Output:
word: I
before: []
after: ['would', 'like']
word: would
before: ['I']
after: ['like', 'a']
word: like
before: ['I', 'would']
after: ['a', 'hamburger']
word: a
before: ['would', 'like']
after: ['hamburger']
word: hamburger
before: ['like', 'a']
after: []
我认为你正在寻找这样的东西
line = "I would like a hamburger"
lst = line.split()
for index, word in enumerate(lst):
print(lst[index-2:index],lst[index+1:index+3])
要查看列表中的每个项目,只需执行以下操作:
list = ['red', 'blue']
for item in range(len(list)):
print(list[item])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.