(100日、2時間、2日目)リストの理解

1.リスト内包表記は、シーケンスからリストを作成する簡単な方法を提供します。一般に、アプリケーションプログラムは、シーケンスの各要素にいくつかの操作を適用し、要素として取得した結果を使用して新しいリストを生成するか、特定の判断条件に従ってサブシーケンスを作成します。

すべてのリスト内包表記の後に式が続きます。

v=[2,4,6]
print([3*x for x in v])
print([[x,x*3] for x in v])
print([3*x for x in v if x>3])
print([3*x for x in v if x<2])
freshfruit = ['  banana', '  loganberry ', 'passion fruit  ']
print([weapon.strip() for weapon in freshfruit])

  

freshfruit = ['banana', 'loganberry ', 'passion fruit']
print(freshfruit)#这一行的作用和下一行一样
print([x.strip() for x in freshfruit]) #随便定义的,strip()函数是把列表中的输出来

  

2.forまたはif句は0からそれ以上になる可能性があります。返される結果は、式に基づいて後続のforおよびifコンテキストから生成されたリストです。式でタプルを推定する場合は、括弧を使用する必要があります。

v1=[2,4,6]
v2=[4,3,-9]
print([x*y for x in v1 for y in v2])  #x和y分别相乘,不是对应位置相乘
print([x+y for x in v1 for y in v2])  #x和y分别相加,不是对应位置相加
print([v1[i]*v2[i] for i in range(len(v2))]) #指定下标就是对应位置相乘

  

3.リスト内包表記では、複雑な式またはネストされた関数を使用できます。

print([str(round(355/113,i)) for i in range(1,6)])

  

 round()メソッドは、n桁に丸められたxの小数点を返します。

おすすめ

転載: blog.csdn.net/zhangxue1232/article/details/109320013