Python:索引范围增加 1
Python: increment index range by 1
我有这个代码:
f = open('story.txt', 'r')
story = f.read()
a = 0
b = 2
active_words = story[a:b]
我正试图在程序的稍后部分做到这一点,我可以将此索引的范围增加 (+1),这样就不会从故事中取出一个词作为 active_words,它需要 2,3,4...等。理想情况下,这将能够在 while 循环的一部分内发生。
抱歉我没有格式化,这是我的第一个 post。
我也刚开始学习 python 所以可能有一个我忽略的非常简单的解决方案...我尝试定义一个像 extend(active_words 这样的函数), 但无济于事。
提前致谢!
您要将句子拆分成单词吗?
如果是这样,请尝试使用:
story = f.read()
words = story.split()
for word in words:
print(word)
您正在寻找的似乎是基本的嵌套 for 循环:
n = len(story)
for k in range(2,n+1):
for j in range(n-k+1):
active_words = story[j:j+k]
外循环控制切片的长度,内循环实际生成切片。
请注意,这些只是字符串切片,其中将包含单词片段。在循环之前,您可能需要类似 story = story.split()
的内容。
我有这个代码:
f = open('story.txt', 'r')
story = f.read()
a = 0
b = 2
active_words = story[a:b]
我正试图在程序的稍后部分做到这一点,我可以将此索引的范围增加 (+1),这样就不会从故事中取出一个词作为 active_words,它需要 2,3,4...等。理想情况下,这将能够在 while 循环的一部分内发生。
抱歉我没有格式化,这是我的第一个 post。
我也刚开始学习 python 所以可能有一个我忽略的非常简单的解决方案...我尝试定义一个像 extend(active_words 这样的函数), 但无济于事。
提前致谢!
您要将句子拆分成单词吗? 如果是这样,请尝试使用:
story = f.read()
words = story.split()
for word in words:
print(word)
您正在寻找的似乎是基本的嵌套 for 循环:
n = len(story)
for k in range(2,n+1):
for j in range(n-k+1):
active_words = story[j:j+k]
外循环控制切片的长度,内循环实际生成切片。
请注意,这些只是字符串切片,其中将包含单词片段。在循环之前,您可能需要类似 story = story.split()
的内容。