列表推導式總共有兩種形式:
①[x for x in data if condition]
此處if主要起條件判斷作用锨苏,data數(shù)據(jù)中只有滿足if條件的才會被留下,最后統(tǒng)一生成為一個數(shù)據(jù)列表
②[exp1 if condition else exp2 for x in data]
此處if...else主要起賦值作用,當data中的數(shù)據(jù)滿足if條件時將其做exp1處理,否則按照exp2處理酥郭,最后統(tǒng)一生成為一個
數(shù)據(jù)列表
例子如下:
#1-100中3的倍數(shù)
p = [x for x in range(1,101) if x%3 == 0]
#1-100中,不是3的倍數(shù)的數(shù)去相反數(shù)撮躁,其余的數(shù)保持不變
q = [x if x%3==0 else -x for x in range(1,101)]