通过PyCLIPS将大数(大于python' s int)从CLIPS传递给python

时间:2016-12-12 19:56:06

标签: python-2.7 casting clips pyclips

似乎PyCLIPS在翻译之前将非常大的数字转换为int。

有关转换Python的信息,请参阅here - >剪辑

def _py2cl(o):
    """convert Python data to a well-formed tuple"""
    t1 = type(o)
    if t1 in (int, long):
        return (_c.INTEGER, int(o))

here转换CLIPS - >蟒

...
def _cl2py(o):
    """convert a well-formed tuple to one of the CLIPS wrappers"""
    if o is None: return None
    elif type(o) == tuple and len(o) == 2:
        if o[0] == _c.INTEGER:
            return Integer(o[1])
...


...
# 1) numeric types
class Integer(int):
    """extend an int for use with CLIPS"""
    def __repr__(self):
        return "<Integer %s>" % int.__repr__(self)
    def __add__(self, o):
        return Integer(int(self) + int(o))
...

我是对的,在CLIPS和PyCLIPS中都没有长期类型吗?是否将所有内容(截断)转换为int?这是一个错误吗?

我问,因为将值6442901632从CLIPS传递给python,通过python调用成为python中的值0x7fffffff。或者我的32位Python导致了这个问题?

如何通过PyClips将大于python&#39; s int的值从CLIPS传递给python?

0 个答案:

没有答案