본문 바로가기

Python/Python FAQ540

Python 파이썬에서 "finally" 절이 왜 필요한가요?, Why do we need the "finally" clause in Python? 질문 나는 왜 우리가 try...except...finally 문에서 finally가 필요한지 잘 모르겠다. 내 의견으로는, 이 코드 블록 try: run_code1() except TypeError: run_code2() other_code() 는 finally를 사용한 이 코드와 똑같다: try: run_code1() except TypeError: run_code2() finally: other_code() 뭔가 빠진 것인가? 답변 이렇게 반환하는 경우 차이가 있습니다: try: run_code1() except TypeError: run_code2() return None # 메서드가 반환되기 전에 finally 블록이 실행됩니다. finally: other_code() 이와 비교: try: ru.. 2023. 10. 11.
Python에서 exit()와 sys.exit()의 차이점, Difference between exit() and sys.exit() in Python 질문 파이썬에서는 두 개의 비슷한 이름을 가진 함수, exit()와 sys.exit()가 있습니다. 두 함수의 차이점은 무엇이며, 어떤 경우에 한 함수를 다른 함수 대신 사용해야 할까요? 답변 exit는 대화형 셸의 도우미입니다 - sys.exit는 프로그램에서 사용하기 위해 설계되었습니다. site 모듈(시작시 자동으로 가져오지만 -S 명령줄 옵션이 제공되는 경우 제외)은 내장된 네임스페이스에 여러 상수를 추가합니다 (예: exit). 대화형 인터프리터 셸에서 유용하며 프로그램에서 사용해서는 안됩니다. 기술적으로, 그들은 대부분 동일한 작업을 수행합니다: SystemExit를 발생시킵니다. sys.exit는 sysmodule.c에서 이를 수행합니다: static PyObject * sys_exit(Py.. 2023. 10. 11.
Python 문자열의 마지막 4개 문자 가져오기 [중복], Get the last 4 characters of a string [duplicate] 질문 다음 문자열이 있습니다: "aaaabbbb" 파이썬을 사용하여 마지막 네 개의 문자를 가져와 문자열에 저장하는 방법은 무엇인가요? 답변 이렇게: >>> mystr = "abcdefghijkl" >>> mystr[-4:] 'ijkl' 이 코드는 문자열의 마지막 4개 문자를 잘라냅니다. -4는 문자열의 끝에서 범위를 시작합니다. [:-4]로 수정한 표현식은 문자열의 끝에서 동일한 4개 문자를 제거합니다: >>> mystr[:-4] 'abcdefgh' 더 많은 슬라이싱에 대한 정보는 이 스택 오버플로우 답변을 참조하세요. 2023. 10. 11.
Python 파이썬에서 두 개의 리스트를 비교하고 일치하는 항목을 반환하는 방법은 무엇인가요? [중복], How can I compare two lists in python and return matches [duplicate] 질문 나는 두 개의 목록을 가져와서 두 목록에 모두 나타나는 값을 찾고 싶습니다. a = [1, 2, 3, 4, 5] b = [9, 8, 7, 6, 5] returnMatches(a, b) 예를 들어 [5]를 반환합니다. 답변 가장 효율적이진 않지만 가장 명백한 방법은 다음과 같습니다: >>> a = [1, 2, 3, 4, 5] >>> b = [9, 8, 7, 6, 5] >>> set(a) & set(b) {5} 만약 순서가 중요하다면 다음과 같이 리스트 컴프리헨션을 사용할 수 있습니다: >>> [i for i, j in zip(a, b) if i == j] [5] (순서의 중요성을 의미하는 동일한 크기의 리스트에만 작동합니다). 2023. 10. 11.