본문 바로가기

Python576

Python 파이썬에서 어떻게 배열을 선언하나요?, How do I declare an array in Python? 질문 어떻게 Python에서 배열을 선언하나요? 답변 variable = [] 지금 variable은 빈 리스트를 참조합니다*. 물론 이것은 할당이며, 선언이 아닙니다. Python은 동적으로 타입이 지정되기 때문에 "이 변수는 리스트 이외의 다른 것을 참조하지 않아야 한다"는 방법이 없습니다. *기본 내장 Python 타입은 리스트라고 불리며, 배열이 아닙니다. 이는 임의의 길이로 정렬된 컨테이너로, 서로 다른 유형의 객체들을 포함할 수 있습니다 (유형은 중요하지 않으며 자유롭게 혼합될 수 있음). 이는 C의 array 타입과 더 가까운 유형을 제공하는 array 모듈과 혼동해서는 안 됩니다; 여기서는 내용물이 동일한 유형으로 구성되어야 하지만 길이는 여전히 동적입니다. 2023. 9. 11.
Python 파이썬에서의 문자열 비교: is vs. == [중복], String comparison in Python: is vs. == [duplicate] 질문 나는 작성하고 있던 Python 스크립트가 이상하게 작동하는 것을 알았고, 무한 루프로 추적했습니다. 루프 조건은 while line is not ''였습니다. 디버거에서 실행하다보니 line이 실제로는 ''였습니다. is not '' 대신에 !=''로 변경하니 정상적으로 작동했습니다. 또한, int나 Boolean 값을 비교할 때에도 기본적으로 '=='을 사용하는 것이 일반적으로 더 좋다고 생각되나요? 나는 항상 'is'를 사용하는 것이 더 미적으로도 만족스럽고 파이썬스럽다고 생각했는데 (그래서 이 함정에 빠져들게 되었습니다...), 아마도 동일한 id를 가진 두 개체를 찾고 싶을 때만 사용하도록 의도된 것인지 궁금합니다. 답변 모든 내장 Python 객체 (예: 문자열, 리스트, 사전, 함수 등.. 2023. 9. 11.
Python def main()을 왜 사용해야 하나요? [중복됨], Why use def main()? [duplicate] 질문 나는 일부 코드 샘플과 자습서를 보았는데 def main(): # 내 코드 여기에 if __name__ == "__main__": main() 하지만 왜 그럴까요? 파일의 맨 위에서 함수를 정의하고 그 아래에 코드를 작성하는 것이 아닌가요? 예를 들어 def my_function() # 내 코드 여기에 def my_function_two() # 내 코드 여기에 # 일부 코드 # 함수 호출 # 출력(무언가) 나는 그냥 main에 어떤 요점이 있는지 궁금합니다. 답변 메인 센티널이 없으면, 스크립트가 모듈로 가져와져도 코드가 실행됩니다. 2023. 9. 11.
Python 파이썬 함수의 소스 코드를 어떻게 얻을 수 있을까요?, How can I get the source code of a Python function? 질문 아래와 같이 정의된 Python 함수가 있다고 가정합니다: def foo(arg1,arg2): #인자들을 이용하여 작업 수행 a = arg1 + arg2 return a foo.func_name을 사용하여 함수의 이름을 가져올 수 있습니다. 위에서 입력한 대로 함수의 소스 코드를 프로그래밍적으로 어떻게 가져올 수 있을까요? 답변 만약 함수가 파일 시스템에서 사용 가능한 소스 파일에서 가져온 것이라면, inspect.getsource(foo)가 도움이 될 수 있습니다: 만약 foo가 다음과 같이 정의되어 있다면: def foo(arg1,arg2): #args와 무언가를 수행 a = arg1 + arg2 return a 그러면: import inspect lines = inspect.getsource(.. 2023. 9. 11.