gpt4 book ai didi

python 列表理解无效的语法,而 if 语句

转载 作者:太空宇宙 更新时间:2023-11-03 12:39:33 25 4
gpt4 key购买 nike

我有这样的列表 z = ['aaaaaa','bbbbbbbbbb','cccccccc'] 我想从所有元素中删除前 6 个字符,如果元素为空则不放入另一个列表。所以我写了这段代码:

[x[6:] if x[6:] is not '' else pass for x in z]

我试过

通过继续

仍然是语法错误。也许有人可以帮助我吗?谢谢

最佳答案

每当您需要从列表中过滤项目时,条件必须在末尾。所以你需要过滤空项,像这样

[x[6:] for x in z if x[6:] != ""]
# ['bbbb', 'cc']

因为空字符串是假的,我们可以像下面这样简洁地写出同样的条件

[x[6:] for x in z if x[6:]]

作为替代方案,正如 tobias_k 所建议的,您可以像这样检查字符串的长度

[x[6:] for x in z if len(x) > 6]

关于python 列表理解无效的语法,而 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25500630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com