, gtk.PAGE_ORIENTATION_LANDSCAPE class 'gtk._gtk.PageOrientation', type 'gobject.GEnum', , , type 'int'.
, GTK- ints, json- , int , , default .
, json , : -/ ( , - ). , isinstance(value, (int, long)).
, , json encoder , json . encoder.py json ( /usr/lib/python2.7/json/encoder.py) .
_iterencode_list() _iterencode_dict() ( _make_iterencode()), int long; , str(value). encodeInt(value) ( !) encodeInt() encoder.py:
def encodeInt(value):
try:
return value.value_name
except:
return str(value)
:
import encoder
, C , . ( , , ( ) C, Python, - , .) :
encoder.c_make_encoder = None
:
print encoder.JSONEncoder().encode({
gtk.PAGE_ORIENTATION_PORTRAIT: [
gtk.PAGE_ORIENTATION_LANDSCAPE
],
gtk.PAGE_ORIENTATION_LANDSCAPE: gtk.PAGE_ORIENTATION_PORTRAIT })
:
{"GTK_PAGE_ORIENTATION_PORTRAIT": [GTK_PAGE_ORIENTATION_LANDSCAPE], "GTK_PAGE_ORIENTATION_LANDSCAPE": GTK_PAGE_ORIENTATION_PORTRAIT}
, Json dict . . int - - . .
http://pastebin.com/2HAtN9E8, .