파이썬-리스트1의 각 인수로 리스트2를 중복없이 반복하기
조회수 1394회
아래 코드를 단순화 하려면 어떻게 하나요?
Newlist =[ ]
A_list = [a, b, c, d, e, f]
page_list = [1, 4, 5]
''''''''''''''''''
for 'A' in A_list:
names1 = 클래스 메소드 함수(type='A', page=1)
Newlist.extend(names1)
names2 = 클래스 메소드 함수(type='A', page=4)
Newlist.extend(names2)
names3 = 클래스 메소드 함수(type='A', page=5)
Newlist.extend(names3)
page 값은 리스트인데 A_list와 함께 for문으로 같이 엮는 방법을 모르겠네요. 원하는 결과값은 (a, 1) (a, 4) (a, 5) (b, 1) (b, 4) (b, 5) . . .
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
반복작업은 itertools 모듈을 사용해보세요.
import itertools A_list = ['a', 'b', 'c', 'd', 'e', 'f'] page_list = [1, 4, 5] list(itertools.product(A_list, page_list)) [('a', 1), ('a', 4), ('a', 5), ('b', 1), ('b', 4), ('b', 5), ('c', 1), ('c', 4), ('c', 5), ('d', 1), ('d', 4), ('d', 5), ('e', 1), ('e', 4), ('e', 5), ('f', 1), ('f', 4), ('f', 5)]
-
Newlist =[ ]
A_list = ['a', 'b', 'c', 'd', 'e', 'f']
page_list = [1, 4, 5]
for i in A_list : for v in page_list : Newlist.append((i,v))
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력