Python283 Python 메모이제이션은 무엇이며, 파이썬에서 어떻게 사용할 수 있을까요?, What is memoization and how can I use it in Python? 질문 저는 방금 Python을 시작했고 memoization이 무엇이며 어떻게 사용하는지 전혀 모르겠습니다. 또한, 간단한 예제를 볼 수 있을까요? 답변 메모이제이션은 메소드 호출의 결과를 메소드의 입력에 기반하여 기억하고, 결과를 다시 계산하는 대신 기억된 결과를 반환하는 것을 효과적으로 의미합니다. 이것을 메소드 결과의 캐시로 생각할 수 있습니다. 자세한 내용은 Introduction To Algorithms (3e), Cormen et al.의 387페이지를 참조하십시오. 파이썬에서 메모이제이션을 사용하여 팩토리얼을 계산하는 간단한 예제는 다음과 같습니다: factorial_memo = {} def factorial(k): if k < 2: return 1 if k not in factorial_m.. 2023. 10. 24. Python 문자열.replace에 정규식을 입력하는 방법은 무엇인가요?, How to input a regex in string.replace? 질문 정규식 선언에 도움이 필요합니다. 입력은 다음과 같습니다: this is a paragraph with in between and then there are cases ... where the number ranges from 1-100. and there are many other lines in the txt files with such tags 필요한 출력은 다음과 같습니다: this is a paragraph with in between and then there are cases ... where the number ranges from 1-100. and there are many other lines in the txt files with such tags 다음을 시도해 보았습니다: #.. 2023. 10. 24. Python "RuntimeError: dictionary changed size during iteration" 오류를 피하는 방법은 무엇인가요?, How can I avoid "RuntimeError: dictionary changed size during iteration" error? 질문 어떤 리스트의 사전이 있다고 가정해봅시다: d = {'a': [1], 'b': [1, 2], 'c': [], 'd':[]} 이제 값이 빈 리스트인 키-값 쌍을 제거하고 싶습니다. 다음 코드를 시도해봤습니다: for i in d: if not d[i]: d.pop(i) 하지만 이렇게 하면 오류가 발생합니다: RuntimeError: dictionary changed size during iteration 사전을 반복하는 동안에는 항목을 추가하거나 제거할 수 없다는 것을 이해합니다. 이 문제를 해결하기 위해 이 제한을 어떻게 우회할 수 있을까요? 이로 인해 문제가 발생할 수 있고 그 이유에 대한 인용은 Modifying a Python dict while iterating over it에서 확인할 수 .. 2023. 10. 24. Python 파이썬의 람다에서 "if"를 실행하는 방법이 있을까요? [중복], Is there a way to perform "if" in python's lambda? [duplicate] 질문 파이썬 2.6에서는 다음을 수행하려고 합니다: f = lambda x: if x==2 print x else raise Exception() f(2) # "2"를 출력해야 함 f(3) # 예외를 발생시켜야 함 이것은 분명히 문법이 아닙니다. lambda에서 if를 수행할 수 있는지 여부와 가능하다면 어떻게 수행하는지 알 수 있을까요? 답변 원하는 구문은 다음과 같습니다: lambda x: True if x % 2 == 0 else False 하지만 람다에서는 print나 raise를 사용할 수 없습니다. 2023. 10. 24. 이전 1 ··· 9 10 11 12 13 14 15 ··· 71 다음