python - python list_iterator 类未定义
问题描述
我正在尝试以下操作:
>>> i = iter([1,2,3])
>>> print(type(i))
<class 'list_iterator'>
>>> print(type(i).mro())
[<class 'list_iterator'>, <class 'object'>]
>>> j = list_iterator()
最后几行给了我一个错误:
Traceback (most recent call last):
File "/home/pru/ML/stepik/examples module2/iterators.py", line 10, in <module>
j = list_iterator()
NameError: name 'list_iterator' is not defined
怎么没有定义?解释器不会在“object”命名空间中查找名称“list_iterator”吗?
解决方案
“解释器不会在 'object' 命名空间中查找名称 'list_iterator' 吗?” 这不是它的工作原理。object
是一个类,而不是命名空间,并且list_iterator
是 的子类object
,但这并不意味着我们必须可以访问它。
在大多数情况下,您不需要使用list_iterator
,这就是它没有暴露给我们的原因,但如果您真的需要它,您可以通过如下定义来使用它:
list_iterator = type(iter([]))
推荐阅读
- graphql - 在 Gatsby 配置中,如何将元数据对象隔离到它自己的文件中,但仍然能够在 GraphQL 中使用它?
- java - 启动嵌入式tomcat服务器时出现问题
- python - 托管 Python 程序以供远程使用
- c++ - 根据输入的等级输出正确的字母等级
- python - 迭代列表直到条件python
- laravel - 没有数据通过表单保存到我的数据库中
- java - 在 forge 1.8.9 mod 中加载纹理模型时出现问题
- java - Spring Boot HttpSecurity - @PreAuthorize - 如何设置 AuthenticationFilter?
- c - 我正在尝试在 atmega164 上制作一个简单的吉他调音器,但我无法制作用于在 CodeVisionAVR 上读取频率的代码
- javascript - 如何在 javascript 中强制 Date.parse() 转换为本地时间和日期而不是 UTC