Python range()를 사용하여 역순으로 목록을 출력합니다., Print a list in reverse order with range()?
질문 파이썬에서 range()를 사용하여 다음과 같은 리스트를 어떻게 생성할 수 있을까요? [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] 답변 사용하려면 reversed() 함수를 사용하세요 (효율적인 이유로 range는 __reversed__를 구현합니다): reversed(range(10)) 이것이 훨씬 의미가 있습니다. 업데이트: list 캐스트 만약 list로 만들고 싶다면 (@btk가 지적한 대로): list(reversed(range(10))) 업데이트: range만 사용하는 해결책 동일한 결과를 얻기 위해 range만 사용하려면 모든 매개변수를 사용할 수 있습니다. range(start, stop, step) 예를 들어, 리스트 [3, 2, 1, 0]을 생성하려면 다음을 사용할 수 ..
2023. 10. 16.
Python 병렬 리스트의 해당 값에 따라 목록을 정렬합니다. [중복], Sorting list according to corresponding values from a parallel list [duplicate]
질문 나는 다음과 같은 문자열 목록을 가지고 있습니다: X = ["a", "b", "c", "d", "e", "f", "g", "h", "i"] Y = [ 0, 1, 1, 0, 1, 2, 2, 0, 1 ] 다음 출력을 얻기 위해 Y의 값을 사용하여 X를 정렬하는 가장 짧은 방법은 무엇인가요? ["a", "d", "h", "b", "c", "e", "i", "f", "g"] 같은 "key"를 가진 요소의 순서는 중요하지 않습니다. for 구문을 사용할 수 있지만 더 짧은 방법이 있는지 궁금합니다. 어떤 제안이 있으신가요? 답변 가장 짧은 코드 [x for _, x in sorted(zip(Y, X))] 예시: X = ["a", "b", "c", "d", "e", "f", "g", "h", "i"] Y = ..
2023. 9. 9.
Python 문자열을 문자의 리스트로 어떻게 나눌 수 있나요?, How do I split a string into a list of characters?
질문 문자열을 문자 목록으로 어떻게 분할할 수 있을까요? str.split은(는) 작동하지 않습니다. "foobar" → ['f', 'o', 'o', 'b', 'a', 'r'] 답변 list 생성자를 사용하세요: >>> list("foobar") ['f', 'o', 'o', 'b', 'a', 'r'] list는 입력 iterable을 반복하여 얻은 항목을 사용하여 새로운 목록을 만듭니다. 문자열은 반복 가능한(iterable) 객체입니다 -- 반복하는 동안 각 반복 단계에서 하나의 문자를 생성합니다.
2023. 8. 2.