distutils
을 사용하여 프로그램을 컴파일하려하지만 패키지를 설치하기 전에 사용자가 Tkinter를 설치했는지 확인하고 싶습니다.어떻게 distutils와 Tkinter가 필요합니까?
내 Google 검색에서 유용한 정보를 찾지 못했습니다. 어떤 유용한 정보를 얻을 수 있습니까?
덕분에, 웨인
당신은install
에서 상속하는 클래스를 가지고 다음이 작업을 수행 할 수 있습니다
distutils
을 사용하여 프로그램을 컴파일하려하지만 패키지를 설치하기 전에 사용자가 Tkinter를 설치했는지 확인하고 싶습니다.어떻게 distutils와 Tkinter가 필요합니까?
내 Google 검색에서 유용한 정보를 찾지 못했습니다. 어떤 유용한 정보를 얻을 수 있습니까?
덕분에, 웨인
당신은install
에서 상속하는 클래스를 가지고 다음이 작업을 수행 할 수 있습니다
:
는 Tkinter를가 python standard library에from distutils.command.install import install
class Install(install):
def run(self):
if not check_dependencies():
# Tkinter was not installed, handle this here
install.run(self) # proceed with the installation
def check_dependencies():
try:
return __import__('Tkinter')
except ImportError:
return None
, 그것은 항상이 있어야한다.
sukhbir의 포스트에서 언급했듯이, 우분투에서는 기본적으로 설치되지 않습니다 - 당신은'python-tk' 패키지를 설치해야합니다. 우분투를 설치 한 적어도 * 마지막 * 시간은 아니 었습니다. –
불행하게도 Tkinter
을 강제로 설치하기위한 표준적인 플랫폼 간 방법은 없습니다. Tkinter
은 Python 표준 라이브러리의 일부이므로 Tkinter
을 제거하거나 선택적 표준 엔터티로 패키지하는 배포자는 자체 패키지 관리 도구를 사용하여 패키지 작업을 수행하며 일반적으로 특정 명령을 알아야합니다. 각 분포에 대해. 당신이 일반적으로 할 수있는 최선은 대한 시험이며 (Python 3
또는 tkinter
) Tkinter
가 가져올 수없는 경우 정상적으로 실패, 그래서 뭔가 같은 :
import sys
try:
import Tkinter
except ImportError:
sys.exit("Tkinter not found")
그리고 네, Tkinter를 표준 라이브러리에 있습니다. – user225312
일부 플랫폼 (Ubuntu)에서는 기본적으로 설치되지 않습니다. –
Wayne, 저는 10.10입니다. 기본적으로 설치됩니다. 또한 stdlib의 일부이기 때문에 파이썬이 있으면 거기에 너무 적합해야합니까? 그것이 stdlib에 언제 포함 되었습니까? 나는 모른다. 어쩌면 그게 문제 일 수있다. 어쨌든 위의 해결 방법으로 충분합니다. – user225312