본문 바로가기

python332

Python 스레드에서 반환 값을 어떻게 얻을 수 있나요?, How to get the return value from a thread? 질문 아래의 함수 foo는 문자열 'foo'를 반환합니다. 스레드의 대상에서 반환된 'foo' 값을 어떻게 얻을 수 있을까요? from threading import Thread def foo(bar): print('hello {}'.format(bar)) return 'foo' thread = Thread(target=foo, args=('world!',)) thread.start() return_value = thread.join() 위에서 보여진 "하나의 명백한 방법"은 작동하지 않습니다: thread.join()은 None을 반환했습니다. 답변 하나의 방법은 가변 객체(예: 리스트 또는 사전)를 스레드의 생성자와 함께 전달하여 스레드가 해당 객체의 전용 슬롯에 결과를 저장하는 것입니다. 예를 들면.. 2023. 9. 10.
Python 3와 함께 pip를 설치하는 방법은 무엇인가요?, How to install pip with Python 3? 질문 저는 pip을(를) 설치하고 싶습니다. 이것은 Python 3를 지원해야하지만, Python 2에서만 사용 가능한 setuptools가 필요합니다. Python 3와 함께 pip을 어떻게 설치할 수 있을까요? 답변 편집: setuptools의 수동 설치 및 사용은 더 이상 표준 프로세스가 아닙니다. 만약 Python 2.7.9+ 또는 Python 3.4+를 실행 중이라면 축하합니다, 이미 pip가 설치되어 있을 것입니다. 그렇지 않다면 계속 읽으세요. 만약 Unix-like 시스템을 실행 중이라면 일반적으로 Python 버전이 2.7.9 이하이거나 3.4 이하이거나 시스템이 어떤 이유로 인해 포함되지 않았다면, 패키지 관리자를 통해 pip 패키지를 설치할 수 있습니다. 일부 일반적인 배포판에 대한 .. 2023. 8. 2.
Python 유니코드 문자열에서 강세를 제거하는 가장 좋은 방법은 무엇인가요?, What is the best way to remove accents (normalize) in a Python unicode string? 질문 나는 Python에서 유니코드 문자열을 가지고 있으며, 모든 악센트 (발음 기호)를 제거하고 싶습니다. 웹에서이를 수행하는 우아한 방법을 찾았습니다 (Java에서): 유니코드 문자열을 긴 정규화 된 형식으로 변환하십시오 (글자와 발음 기호를 별도의 문자로 분리) 유니코드 유형이 "발음 기호"인 모든 문자를 제거하십시오. pyICU와 같은 라이브러리를 설치해야합니까? 아니면 Python 표준 라이브러리로도 가능한가요? 그리고 Python 3은 어떻게 되나요? 중요한 참고 사항: 악센트가있는 문자를 그들의 악센트가없는 대응물로 명시 적 매핑이없는 코드를 피하고 싶습니다. 답변 Unidecode는 이에 대한 올바른 답입니다. 이는 어떤 유니코드 문자열도 ASCII 텍스트로 가능한 한 가장 가까운 표현으로.. 2023. 7. 10.
Python 숫자를 어떻게 올림하나요?, How do you round UP a number? 질문 파이썬에서 숫자를 어떻게 올림할 수 있을까요? round(number)를 시도해봤지만 숫자를 내림 처리합니다. 예시를 들어보면 다음과 같습니다: round(2.3) = 2.0 하지만 원하는 대로 3이 아닙니다. 그럼 int(number + .5)를 시도해봤지만 다시 숫자를 내림 처리합니다! 예시는 다음과 같습니다: int(2.3 + .5) = 2 답변 math.ceil (천장) 함수는 x보다 크거나 같은 가장 작은 정수를 반환합니다. Python 3의 경우: import math print(math.ceil(4.2)) Python 2의 경우: import math print(int(math.ceil(4.2))) 2023. 7. 10.