실제 상황에서는 일부 목록을 생성해야 하는 경우가 많습니다. 목록에 하나씩 추가하기 위해 for 루프를 상대적으로 비효율적으로 사용하는 것 외에 더 좋은 방법이 있습니까?
Python은 목록을 생성하는 매우 강력한 방법을 제공합니다.
예를 들어 1부터 100까지의 데이터 목록을 만들어야 합니다.
range(1,101)
12,22,32...1002의 목록을 만들고 싶은데 어떻게 구현하나요? ?
[x*x for x in range(1,101)] | |------------------ x取得1,2,3,4....100列表 |------------------------- 对列表中的元素进行平方计算
목록이 우리에게 필요한 것인지 먼저 어떻게 판단하나요? if를 사용할 수 있습니다.
[x*x for x in range(1,1001) if x%2==0] |------先对x进行判断,是偶数的则留下
전체 순열 목록을 유지하기 위한 다중 루프 예를 들어 9*9 곱셈표를 모두 생성해야 하는 경우 이중 루프를 사용할 수 있습니다.
[str(x)+"*"+str(y)+"="+str(x*y) for x in range(0,10) for y in range(0,10)]
위 코드에서 외부 루프는 x이고 내부 루프는 y입니다.