Python 的 type(~)
方法可以返回现有对象的类型,也可以返回新类型的对象。
参数
现有对象的返回类型
1. object
| object
我们要返回其类型的对象。
返回新类型对象
1. name
| string
类名称。成为__name__
属性。
2. bases
| tuple
用于逐项列出基类的元组。成为__bases__
属性。
3. dict
| dict
一个字典,是包含类主体定义的命名空间。成为__dict__
属性。
返回值
返回值取决于以下情况:
案子 |
返回值 |
---|---|
与现有对象一起使用 |
对象的类型 |
用于创建新对象 |
新类型对象 |
例子
现有对象的类型
返回对象类型"abcdefg"
:
a = "abcdefg"
type(a)
str
返回对象类型"my_dog"
:
class Doge():
# This is the constructor for Python
def __init__(self, name, age):
self.name = name
self.age = age
my_dog = Doge("Roxas", 26)
type(my_dog)
__main__.Doge
正如我们所看到的,我们还可以返回自定义类对象的类型。
创建一个新对象
要创建具有 'Doge'
__name__
属性的新对象:
Doge = type('Doge', (object,), dict(a=1))
print(Doge)
<class '__main__.Doge'>
上面的代码本质上与以下代码相同:
class Doge:
a=1
print(Doge)
<class '__main__.Doge'>
相关用法
- Python type()用法及代码示例
- Python type用法及代码示例
- Python types.SimpleNamespace用法及代码示例
- Python types.GenericAlias用法及代码示例
- Python typing.get_type_hints用法及代码示例
- Python typing.Concatenate用法及代码示例
- Python typing.Optional用法及代码示例
- Python typing.Final用法及代码示例
- Python typing.TypedDict.__optional_keys__用法及代码示例
- Python typing.Protocol用法及代码示例
- Python typing.NoReturn用法及代码示例
- Python typing.TypedDict.__total__用法及代码示例
- Python typing.is_typeddict用法及代码示例
- Python typing.AsyncGenerator用法及代码示例
- Python typing.final用法及代码示例
- Python typing.ClassVar用法及代码示例
- Python typing.ParamSpec用法及代码示例
- Python typing.Literal用法及代码示例
- Python typing.overload用法及代码示例
- Python typing.TYPE_CHECKING用法及代码示例
- Python typing.TypedDict用法及代码示例
- Python typing.List用法及代码示例
- Python typing.get_origin用法及代码示例
- Python typing.TypeGuard用法及代码示例
- Python typing.ParamSpecKwargs用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Python | type method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。