8

私はこのようなforループを持っています:

for i in conversion:
    for f in glob.glob(i):
        print(os.path.getsize(f))

これをリスト内包表記に変換したい:

これを試しました:

[os.path.getsize(f) for f in glob.glob(i) for i in conversion]

しかし、動作しませんでした。

4

1 に答える 1

17

forダブルリスト内包におけるループの順序は、ネストされたループで使用するのと同じ順序です。

[os.path.getsize(f) for i in conversion for f in glob.glob(i)]

内側のループがより「内側」であると期待するため、少し混乱しますが、ネストされたループと同じ順序であることに気付くと、すべてが簡単になります:)

于 2013-03-01T04:26:13.490 に答える