gpt4 book ai didi

python - 使用 if 条件列表理解

转载 作者:行者123 更新时间:2023-11-28 19:50:20 29 4
gpt4 key购买 nike

下面一行Python代码

values = ", ".join(["\"%s\"" % x for x in row])

采用“行”中的元素列表来创建逗号分隔的字符串“值”,同时每个值都放在双引号中,例如:"纽约", "5", "", "3.2"

但是,由于结果是 mysqldump 文件的一部分,空字段 ("") 应该变为 NULL(不带双引号)。

因此,我想学习如何更改该表达式,以便检查 x 是否为空 (""),在这种情况下,应将 NULL 附加到值字符串。

谢谢

最佳答案

values = ", ".join('"%s"' % x if x else 'NULL' for x in row)

例如:

>>> row = ["foo", "", "bar"]
>>> values = ", ".join('"%s"' % x if x else 'NULL' for x in row)
>>> values
'"foo", NULL, "bar"'

感谢 DSM 指出,将列表推导式更改为 generator expression 当然更好。 - 这使得它更快,因为不再需要构建一个列表,该列表将在之后立即被丢弃。

关于python - 使用 if 条件列表理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12653670/

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