如何在列表推导中转换这个for循环?

pyn*_*ice 5 python list

我有一个像这样的for循环:

for i in conversion:
    for f in glob.glob(i):
        print(os.path.getsize(f))
Run Code Online (Sandbox Code Playgroud)

我想将其转换为列表理解:

试过这个:

[os.path.getsize(f) for f in glob.glob(i) for i in conversion]
Run Code Online (Sandbox Code Playgroud)

但没有奏效.

nne*_*neo 11

该顺序for循环的双列表内涵是相同的顺序,你会与嵌套循环使用:

[os.path.getsize(f) for i in conversion for f in glob.glob(i)]
Run Code Online (Sandbox Code Playgroud)

这有点令人困惑,因为你期望内部循环更"内在",但一旦你意识到它与嵌套循环的顺序相同,一切都很简单:)