2009-09-12 6 views
1

우선,이 질문의 타일에 어떤 불일치가 있는지 실례합니다. 아마 일부는 있지만 실제로는 잘 모릅니다.win32com 객체의 인스턴스 유형을 얻는 방법은 무엇입니까?

이 질문은 python에서 COM을 통해 iTunes를 제어하는 ​​컨텍스트에서 제기되었습니다. 내가하고 싶은 무엇

>>> itunes = win32com.client.Dispatch("iTunes.Application") 
>>> itunes 
<win32com.gen_py.iTunes 1.12 Type Library.IiTunes instance at 0x27248400> 
>>> lib = itunes.LibraryPlaylist 
>>> lib 
<win32com.gen_py.iTunes 1.12 Type Library.IITLibraryPlaylist instance at 0x27249880> 

은 아이튠즈에서 'IiTunes'를하고 lib 디렉토리에서 'IITLibraryPlaylist'검색하는 것입니다. 나는 유형 (아이튠즈)과 유형 (lib)을 시도했지만 둘 다 ""만을 반환하고 그것이 내가 찾고있는 것이 아닙니다.

감사합니다. lib.__class__lib의를

답변

1

불행히도 나는 시도하는 손에는 Windows 시스템이 없다,하지만 난 itunes.__class__ 문제의 itunes 객체의 (old_style) 클래스라고 생각합니다. 따라서 클래스의 __name__ 속성을 보면 원하는 것을 얻을 수 있습니다.

불행히도 이것들은 구식 클래스이므로 (type(...)은 올바르게 작동하지 않습니다), win32com은 반짝이는 새로운 스타일의 클래스가 Python 2.2에서 태어나 기 훨씬 오래 걸렸습니다. 이해할 수있다, 나는 생각한다 ;-).

+0

감사합니다. 그게 바로 제가 찾고 있던 것이 었습니다! – nunos

관련 문제