본문 바로가기

1.344

Python 내 타입 힌트에서 함수 타입을 어떻게 지정할 수 있을까요?, How can I specify the function type in my type hints? 질문 변수의 타입 힌트를 함수 타입으로 지정하는 방법은 어떻게 되나요? typing.Function은 없고, 관련된 PEP인 PEP 483에도 그에 대한 내용을 찾을 수 없었습니다. 답변 As @jonrsharpe noted in a comment, this can be done with typing.Callable: from typing import Callable def my_function(func: Callable): Note: Callable on its own is equivalent to Callable[..., Any]. Such a Callable takes any number and type of arguments (...) and returns a value of any type (A.. 2023. 10. 8.
Python 중첩된 딕셔너리를 예쁘게 출력하는 방법은 무엇인가요?, How to pretty print nested dictionaries? 질문 파이썬에서 depth가 약 4인 딕셔너리를 어떻게 예쁘게 출력할 수 있을까요? pprint()를 사용하여 예쁘게 출력을 시도해보았지만 작동하지 않았습니다: import pprint pp = pprint.PrettyPrinter(indent=4) pp.pprint(mydict) 저는 각 중첩에 대해 들여쓰기 ("\t")를 원하며, 다음과 같은 결과를 얻고 싶습니다: key1 value1 value2 key2 value1 value2 어떻게 이를 할 수 있을까요? 답변 내 첫 번째 생각은 JSON 직렬화기가 중첩된 사전에 대해 아마도 꽤 잘 작동한다는 것이었으므로, 그걸 이용해서 속임수를 써볼까 생각했습니다: >>> import json >>> print(json.dumps({'a':2, 'b':{'x.. 2023. 10. 8.
Python 파이썬에서 변수가 정의되어 있는지 확인하세요. [중복됨], Determine if variable is defined in Python [duplicate] 질문 코드에서 런타임에 특정 위치에서 변수가 설정되었는지 어떻게 알 수 있을까요? 이는 항상 명확하지 않습니다. 왜냐하면 (1) 변수가 조건부로 설정될 수 있고, (2) 변수가 조건부로 삭제될 수 있기 때문입니다. 저는 Perl의 defined()이나 PHP의 isset(), 또는 Ruby의 defined?과 유사한 것을 찾고 있습니다. if condition: a = 42 # "a"는 여기서 정의되어 있나요? if other_condition: del a # "a"는 여기서 정의되어 있나요? 답변 try: thevariable except NameError: print("음, 결국 정의되지 않았네요!") else: print("확실히, 정의되었습니다.") 2023. 10. 8.
Python 다수의 부분 플롯을 사용하여 부분 플롯 크기/간격을 개선하십시오., Improve subplot size/spacing with many subplots 질문 저는 matplotlib에서 수직으로 쌓인 다수의 플롯을 생성해야 합니다. 결과물은 savefig를 사용하여 저장되고 웹페이지에서 볼 수 있으므로, 서브플롯이 서로 겹치지 않도록만 한다면 최종 이미지의 높이는 상관하지 않습니다. 그러나 피격을 허용하는 그림의 크기를 어떻게 설정하든 서브플롯은 항상 겹쳐 보입니다. 현재 코드는 다음과 같습니다. import matplotlib.pyplot as plt import my_other_module titles, x_lists, y_lists = my_other_module.get_data() fig = plt.figure(figsize=(10,60)) for i, y_list in enumerate(y_lists): plt.subplot(len(titles.. 2023. 10. 8.