sort() 함수는 정렬을 시키지만 원본을 유지하지 않는다!
하지만 sorted()는 새로운 정렬된 리스트를 반환한다.
list1 = [2,3,1]
list2 = sorted(list1)
보통 2차원 리스트의 행과 열을바꾸기 위해서는 이중 for문을 쓰지만,
파이썬에서는 zip과 unpacking을 이용하면 코드 한 줄로 리스트를 뒤집을 수 있다!
mylist = [[1,2,3], [4,5,6], [7,8,9]]
new_list = list(map(list, zip(*mylist))
zip은 각 iterable 요소들을 모으는 이터레이터를 만든다.
튜플의 이터레이터를 돌려주며, i번째 튜플은 각 인자로 전달된 시퀀스나 이터러블의 i번째 요소를 포함한다.
mylist = [ 1,2,3 ]
new_list = [ 40, 50, 60 ]
for i in zip(mylist, new_list):
print (i)
# (1, 40)
# (2, 50)
# (3, 60)
map()은 사실 알고 있었지만 다시 짚고 넘어간다..!
Iterable의 모든 멤버의 type을 변환하는 방법으로 map() 함수를 사용한다.
list1 = ['1', '100', '33']
list2 = list(map(int, list1))
정수를 담은 이차원 리스트, mylist 가 solution 함수의 파라미터로 주어집니다. solution 함수가 mylist 각 원소의 길이를 담은 리스트를 리턴하도록 빈칸을 완성해보세요.
def solution(mylist):
answer = list(map(len, mylist))
return answer