📄 pythonize.py
字号:
"""some dbus to python type conversions-decorator for interface-wrapper class for proxy"""def pythonize(var): """translates dbus types back to basic python types.""" if isinstance(var, list): return [pythonize(value) for value in var] if isinstance(var, tuple): return tuple([pythonize(value) for value in var]) if isinstance(var, dict): return dict( [(pythonize(key), pythonize(value)) for key, value in var.iteritems()] ) for klass in [unicode, str, bool, int, float, long]: if isinstance(var,klass): return klass(var) return vardef pythonize_call(func): def deco(*args,**kwargs): return pythonize(func(*args, **kwargs)) return decodef pythonize_interface(func): def deco(*args, **kwargs): args = pythonize(args) kwargs = pythonize(kwargs) return func(*args, **kwargs) return decoclass PythonizeProxy(object): def __init__(self,proxy): self.proxy = proxy def __getattr__(self, key): return pythonize_call(getattr(self.proxy, key))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -