PyObjC - Python 和 Objective-C 的交互接口
MIT
OS X
Objective-C
软件简介
PyObjC 旨在为 Python 和
Objective-C 两种语言之间提供交互的接口。Python
语言可以通过PyObjC来使用已有的Objective-C的代码,反过来Objective-C也可以利用Python语言的一些功能。
PyObjC最主要的用处是在 Mac OS X 系统下使用纯Python语言来开发
Cocoa GUI 应用程序。
示例代码:
class MyClass(NSObject):
def init(self):
"""
Designated initializer for MyClass
"""
# ALWAYS call the super's designated initializer.
# Also, make sure to re-bind "self" just in case it
# returns something else, or even None!
self = objc.super(MyClass, self).init()
if self is None: return None
self.myVariable = 10
# Unlike Python's __init__, initializers MUST return self,
# because they are allowed to return any object!
return self
class MyOtherClass(MyClass):
def initWithOtherVariable_(self, otherVariable):
"""
Designated initializer for MyOtherClass
"""
self = objc.super(MyOtherClass, self).init()
if self is None: return None
self.otherVariable = otherVariable
return self
myInstance = MyClass.alloc().init()
myOtherInstance = MyOtherClass.alloc().initWithOtherVariable_(20)