我在 Python 的 itertools 中找不到 imap()

I can#39;t find imap() in itertools in Python(我在 Python 的 itertools 中找不到 imap())
本文介绍了我在 Python 的 itertools 中找不到 imap()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我有一个问题想用 itertools.imap() 解决.但是,当我在 IDLE shell 中导入 itertools 并调用 itertools.imap() 后,IDLE shell 告诉我 itertools 没有属性 imap.怎么了?

I have a problem that I want to solve with itertools.imap(). However, after I imported itertools in IDLE shell and called itertools.imap(), the IDLE shell told me that itertools doesn't have attribute imap. What's going wrong?

>>> import itertools
>>> dir(itertools)
['__doc__', '__loader__', '__name__', '__package__', '__spec__', '_grouper',     '_tee', '_tee_dataobject', 'accumulate', 'chain', 'combinations', 'combinations_with_replacement', 'compress', 'count', 'cycle', 'dropwhile', 'filterfalse', 'groupby', 'islice', 'permutations', 'product', 'repeat', 'starmap', 'takewhile', 'tee', 'zip_longest']
>>> itertools.imap()
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
itertools.imap()
AttributeError: 'module' object has no attribute 'imap'

推荐答案

itertools.imap() 在 Python 2 中,但不在 Python 3 中.

itertools.imap() is in Python 2, but not in Python 3.

实际上,该函数在 Python 3 中被移到了 map 函数中,如果你想使用旧的 Python 2 地图,你必须使用 list(map()).

Actually, that function was moved to just the map function in Python 3 and if you want to use the old Python 2 map, you must use list(map()).

这篇关于我在 Python 的 itertools 中找不到 imap()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

python arbitrarily incrementing an iterator inside a loop(python在循环内任意递增迭代器)
Joining a set of ordered-integer yielding Python iterators(加入一组产生 Python 迭代器的有序整数)
Iterating over dictionary items(), values(), keys() in Python 3(在 Python 3 中迭代字典 items()、values()、keys())
What is the Perl version of a Python iterator?(Python 迭代器的 Perl 版本是什么?)
How to create a generator/iterator with the Python C API?(如何使用 Python C API 创建生成器/迭代器?)
Python generator behaviour(Python 生成器行为)