lines = [l.split() for l in inpf.readlines() if l.strip()]
在上面的语句中,做了l.strip()
什么?
lines = [l.split() for l in inpf.readlines()].
难道上面的说法还不够吗?
lines = [l.split() for l in inpf.readlines() if l.strip()]
在上面的语句中,做了l.strip()
什么?
lines = [l.split() for l in inpf.readlines()].
难道上面的说法还不够吗?
strip()
删除任何前导/尾随空格。所以它会跳过任何只包含空格或为空的行。
在旁注中,没有必要使用.readlines()
- 您可以迭代这些行,从而避免创建第二个列表,该列表在列表理解完成后立即被丢弃:
lines = [l.split() for l in inpf if l.strip()]