본문 바로가기

Python/Python FAQ540

Python 반복 중에 목록에서 항목을 제거하는 방법은 무엇인가요?, How to remove items from a list while iterating? 질문 파이썬에서 튜플 목록을 반복하면서 특정 조건을 충족하는 경우 해당 튜플을 제거하려고합니다. for tup in somelist: if determine(tup): code_to_remove_tup code_to_remove_tup 대신에 무엇을 사용해야합니까? 이러한 방식으로 항목을 제거하는 방법을 찾을 수 없습니다. 답변 리스트 컴프리헨션을 사용하여 제거하지 않을 요소만 포함하는 새로운 리스트를 만들 수 있습니다: somelist = [x for x in somelist if not determine(x)] 또는 somelist[:] 슬라이스에 할당하여 원래 리스트를 변경하여 원하는 항목만 포함시킬 수 있습니다: somelist[:] = [x for x in somelist if not deter.. 2023. 6. 7.
Python 파이썬에서 두 변수의 논리적 XOR을 어떻게 얻을 수 있나요?, How do you get the logical xor of two variables in Python? 질문 Python에서 두 변수의 논리적 XOR을 어떻게 얻을 수 있나요? 예를 들어, True 값(빈 문자열 또는 None이 아님)을 포함하는 변수 둘 중 하나만 테스트하려고 합니다. str1 = raw_input("Enter string one:") str2 = raw_input("Enter string two:") if logical_xor(str1, str2): print "ok" else: print "bad" ^ 연산자는 비트 연산자로, 모든 객체에서 정의되지 않습니다: >>> 1 ^ 1 0 >>> 2 ^ 1 3 >>> "abc" ^ "" Traceback (most recent call last): File "", line 1, in TypeError: unsupported operand ty.. 2023. 6. 7.
Python 예외를 적절하게 무시하는 방법, How to properly ignore exceptions 질문 Python에서 예외 처리를 처리하지 않고 try-except를 수행하려면 어떻게해야합니까? 다음이 올바른 방법인가요? try: shutil.rmtree(path) except: pass 답변 try: doSomething() except Exception: pass 또는 try: doSomething() except: pass 차이점은 두 번째 방법은 직접적으로 BaseException에서 파생된 KeyboardInterrupt, SystemExit와 같은 것도 잡을 수 있다는 것입니다. 자세한 내용은 문서를 참조하십시오: try문 예외 하지만 모든 오류를 잡는 것은 일반적으로 좋은 방법이 아닙니다. "except: pass"가 나쁜 프로그래밍 관행인 이유를 참조하십시오. 2023. 6. 7.
Python functools.wraps는 무엇을 하는 것인가요?, What does functools.wraps do? 질문 다른 질문에 대한 답변에 댓글에서, 누군가는 functools.wraps가 무엇을 하는지 확실하지 않다고 말했습니다. 그래서, 나는 이 질문을 하여 나중에 StackOverflow에서 참고할 기록이 있도록 하고 싶습니다: functools.wraps는 정확히 무엇을 하는가요? 답변 데코레이터를 사용하면 하나의 함수를 다른 함수로 대체합니다. 다시 말해, 데코레이터를 사용하는 경우 def logged(func): def with_logging(*args, **kwargs): print(func.__name__ + " was called") return func(*args, **kwargs) return with_logging 위와 같은 데코레이터가 있다면 @logged def f(x): """does.. 2023. 6. 7.