簡體   English   中英

將嵌套的for循環轉換為列表理解

[英]Convert nested for loop to list comprehension

我做了這樣的循環代碼:

all = []
for sen_list in sen_lists:
    te = []
    for ele in sen_list:
        boolean = ele == "."
        te.append(boolean)
    all.append(te)

sen_lists = [['a', 'b', 'c', 'd', '.', '.'], ['e', 'f', 'g', 'h']]

上層代碼效果很好...但是我想轉換列表理解代碼。

我這樣嘗試:

[ele == "." for sen_list in rawdf.TEXT[:10] for ele in sen_list]

但是此代碼不起作用。

請告訴我。 謝謝。

考慮嵌套列表理解。 換句話說,就是列表理解列表理解。

內層代表您的內層for循環。 外部代表您的外部for循環。

sen_lists = [['a', 'b', 'c', 'd', '.', '.'], ['e', 'f', 'g', 'h']]

res = [[ele == "." for ele in sen_list] for sen_list in sen_lists]

# [[False, False, False, False, True, True], [False, False, False, False]]

您需要將布爾邏輯包裝在[]中,以便boolean =知道應該等於什么。

boolean = [ele == '.']

我不知道在一件事上做所有事情的邏輯,就像您在問題的末尾嘗試做的那樣。

暫無
暫無

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

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