0
는 왜이 내가 두 번째 for
루프를 주석 때, 튜플을 인쇄 in sort_tup_from_list for key, val in tup: ValueError: not enough values to unpack (expected 2, got 1)
Python3에서 iterables를 풀고 있습니까?
# list with tuples
lst = [("1", "2"), ("3", "4")]
# sorting list by tuple val key
def sort_tup_from_list(input_list):
tmp = []
print(tup)
for tup in input_list:
for key, val in tup:
tmp.append((val, key))
tmp.sort(reverse=True)
return tmp
print(sort_tup_from_list(lst))
반환 :
lst = [("1", "2"), ("3", "4")]
def sort_tup_from_list(input_list):
tmp = []
for tup in input_list:
print(tup)
# for key, val in tup:
# tmp.append((val, key))
# tmp.sort(reverse=True)
return tmp
print(sort_tup_from_list(lst))
출력 :
('1', '2')
('3', '4')
[]
그래서, 튜플이 있습니다. 왜 그들은 스스로를 풀지 않는가?
왜냐하면 당신은'tup'을 반복하기 때문이다. 그리고'tup '의 요소는 단일 문자열입니다. 2 개의 char 문자열을 입력했다면 char을 가진 두 개의 변수로 압축을 풀 것입니다. –
당신이 옳습니다! 두 자로 된 문자열을 추가하는 것은 예상대로 작동하지만 이것은 내가 원하는 것이 아닙니다. 문제 해결;) –