python列表推导式的条件判断语句位置

1.列表推导式总共有两种形式:

[x for x in data if condition]

  • 此处if主要起条件判断作用,data数据中只有满足if条件的才会被留下,最后统一生成为一个数据列表

[exp1 if condition else exp2 for x in data]

  • 此处if…else主要起赋值作用,当data中的数据满足if条件时将其做exp1处理,否则按照exp2处理,最后统一生成为一个数据列表

2.示例

a_list = [1, 2, -3, 0, -4, 5, -6]
b_list = [i for i in a_list if i < 0]
print('b_list:', b_list)

c_list = [i*(-1) if i < 0 else i for i in a_list]
print('c_list:', c_list)

在这里插入图片描述

你可能感兴趣的:(python高级用法,列表,python)