簡體   English   中英

一個襯里-嵌套循環

[英]One liner - Nested for loop

試圖避免嵌套的for循環,但是我不確定如何在一個襯里使用words = x.split()words[y:y+n]

n = 1
for x in data:
    words = x.split()
    for y in range(len(words)-n+1):
        print(words[y:y+n])

到目前為止,我正在處理以下內容:

data = ' '.join([(x, y) for x in data words = x.split() for y in range(len(words)-n+1) words[y:y+n]])

分配臨時變量的一種解決方法是改為遍歷1個元組:

data = ' '.join(words[y:y+n] for x in data for words in (x.split(),) for y in range(len(words)-n+1))
n = 1
for x in data:
    words = x.split()
    for y in range(len(words)-n+1):
        print(words[y:y+n])

n永遠不會改變,所以總是1

for x in data:
    words = x.split()
    for y in range(len(words)-1+1):
        print(words[y:y+1])

所以簡化

for x in data:
    words = x.split()
    for y in range(len(words)):
        print(words[y])

這基本上是

for x in data:
    for word in x.split():
        print(word)

讓我們去

data=' '.join(word for x in data for word in x.split())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM