Python 3.x中是否有创建新类型的方法?我只能用c++来实现。
基本上我想做的是创建一个lexer,在这里我扫描输入,python已经可以做int和string了,但是如果我想要另一个数据类型,比如name,我如何分配它以便我可以做。。。
前)
# This can be done
>>> a = "string"
>>> type(a)
<class, 'str'>
# How can I do this?
>>> b = myName
>>> type(myName)
<class, 'name'>
Tags:
简而言之,如果不编辑源代码(用C编写),就无法在python中创建新类型。
然而,在python中创建
class
的答案可能是更容易的,因为编辑源代码可能会导致与包的兼容性问题(可能是这样的)。你想要这样的东西,一个
class
。在源代码中,您在Python中看到的所有对象类型都是class
形式的。输出与预期稍有不同的原因是
class
的名称是myName
,所以这是type()
返回的。另外,我们在class
名称之前得到__main__.
,因为它是当前模块的本地名称。你可以看看元类:http://eli.thegreenplace.net/2011/08/14/python-metaclasses-by-example/
然而,你到底想实现什么?
相关问题 更多 >
编程相关推荐