精华内容
下载资源
问答
  • 主要介绍了python 为什么map比for循环快,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
  • Python Map 函数的使用

    2020-09-16 08:59:42
    主要介绍了Python Map 函数的使用,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
  • python map函数_Python map()函数

    千次阅读 2020-07-11 07:14:52
    python map函数Python map() function is used to apply a function on all the elements of specified iterable and return map object. Python map object is an iterator, so we can iterate over its elements. ...

    python map函数

    Python map() function is used to apply a function on all the elements of specified iterable and return map object. Python map object is an iterator, so we can iterate over its elements. We can also convert map object to sequence objects such as list, tuple etc. using their factory functions.

    Python map()函数用于将函数应用于指定的iterable的所有元素,并返回map对象。 Python map对象是一个迭代器 ,因此我们可以对其元素进行迭代。 我们还可以使用其工厂函数将映射对象转换为序列对象,例如listtuple等。

    Python map()函数 (Python map() function)

    Python map() function syntax is:

    Python map()函数语法为:

    map(function, iterable, ...)

    We can pass multiple iterable arguments to map() function, in that case, the specified function must have that many arguments. The function will be applied to these iterable elements in parallel. With multiple iterable arguments, the map iterator stops when the shortest iterable is exhausted.

    我们可以将多个可迭代参数传递给map()函数,在这种情况下,指定的函数必须具有那么多参数。 该功能将并行应用于这些可迭代元素。 使用多个可迭代参数,当最短可迭代量耗尽时,映射迭代器将停止。

    Python map()示例 (Python map() example)

    Let’s write a function to be used with map() function.

    让我们编写一个要与map()函数一起使用的函数。

    def to_upper_case(s):
        return str(s).upper()

    It’s a simple function that returns the upper case string representation of the input object.

    这是一个简单的函数,可返回输入对象的大写字符串表示形式。

    I am also defining a utility function to print iterator elements. The function will print iterator elements with white space and will be reused in all the code snippets.

    我还定义了一个实用程序函数来打印迭代器元素。 该函数将打印带有空格的迭代器元素,并将在所有代码段中重复使用。

    def print_iterator(it):
        for x in it:
            print(x, end=' ')
        print('')  # for new line

    Let’s look at map() function example with different types of iterables.

    让我们看一下具有不同类型的可迭代对象的map()函数示例。

    带有字符串的Python map() (Python map() with string)

    # map() with string
    map_iterator = map(to_upper_case, 'abc')
    print(type(map_iterator))
    print_iterator(map_iterator)

    Output:

    输出:

    <class 'map'>
    A B C

    带元组的Python map() (Python map() with tuple)

    # map() with tuple
    map_iterator = map(to_upper_case, (1, 'a', 'abc'))
    print_iterator(map_iterator)

    Output:

    输出:

    1 A ABC

    带有列表的Python map() (Python map() with list)

    map_iterator = map(to_upper_case, ['x', 'a', 'abc'])
    print_iterator(map_iterator)

    Output:

    输出:

    X A ABC

    将地图转换为列表,元组,集合 (Converting map to list, tuple, set)

    Since map object is an iterator, we can pass it as an argument to the factory methods for creating a list, tuple, set etc.

    由于map对象是一个迭代器,因此我们可以将其作为参数传递给用于创建列表,元组,集合等的工厂方法。

    map_iterator = map(to_upper_case, ['a', 'b', 'c'])
    my_list = list(map_iterator)
    print(my_list)
    
    map_iterator = map(to_upper_case, ['a', 'b', 'c'])
    my_set = set(map_iterator)
    print(my_set)
    
    map_iterator = map(to_upper_case, ['a', 'b', 'c'])
    my_tuple = tuple(map_iterator)
    print(my_tuple)

    Output:

    输出:

    ['A', 'B', 'C']
    {'C', 'B', 'A'}
    ('A', 'B', 'C')

    带有lambda的Python map() (Python map() with lambda)

    We can use lambda functions with map() if we don’t want to reuse it. This is useful when our function is small and we don’t want to define a new function.

    如果我们不想重用lambda函数,可以将其与map()一起使用。 当我们的函数很小并且我们不想定义一个新函数时,这很有用。

    list_numbers = [1, 2, 3, 4]
    
    map_iterator = map(lambda x: x * 2, list_numbers)
    print_iterator(map_iterator)

    Output:

    输出:

    2 4 6 8

    Python map()多个参数 (Python map() multiple arguments)

    Let’s look at an example of using map() function with multiple iterable arguments.

    让我们看一个使用带有多个可迭代参数的map()函数的示例。

    # map() with multiple iterable arguments
    list_numbers = [1, 2, 3, 4]
    tuple_numbers = (5, 6, 7, 8)
    map_iterator = map(lambda x, y: x * y, list_numbers, tuple_numbers)
    print_iterator(map_iterator)

    Output: 5 12 21 32

    输出: 5 12 21 32

    Notice that our function has two arguments. The output map iterator is the result of applying this function to the two iterable elements in parallel. Let’s see what happens when the iterables are of different sizes.

    注意,我们的函数有两个参数。 输出映射迭代器是将此功能并行应用于两个可迭代元素的结果。 让我们看看当可迭代对象的大小不同时会发生什么。

    # map() with multiple iterable arguments of different sizes
    list_numbers = [1, 2, 3, 4]
    tuple_numbers = (5, 6, 7, 8, 9, 10)
    map_iterator = map(lambda x, y: x * y, list_numbers, tuple_numbers)
    print_iterator(map_iterator)
    
    map_iterator = map(lambda x, y: x * y, tuple_numbers, list_numbers)
    print_iterator(map_iterator)

    Output:

    输出:

    5 12 21 32 
    5 12 21 32

    So when the arguments are of different sizes, then the map function is applied to the elements until one of them is exhausted.

    因此,当参数的大小不同时,会将map函数应用于元素,直到用尽其中一个元素为止。

    具有功能None的Python map() (Python map() with function None)

    Let’s see what happens when we pass the function as None.

    让我们看看将函数作为None传递时会发生什么。

    map_iterator = map(None, 'abc')
    print(map_iterator)
    for x in map_iterator:
        print(x)

    Output:

    输出:

    Traceback (most recent call last):
      File "/Users/pankaj/Documents/github/journaldev/Python-3/basic_examples/python_map_example.py", line 3, in <module>
        for x in map_iterator:
    TypeError: 'NoneType' object is not callable
    GitHub Repository. GitHub存储库中检出完整的python脚本和更多Python示例。

    Reference: Official Documentation

    参考: 官方文档

    翻译自: https://www.journaldev.com/22960/python-map-function

    python map函数

    展开全文
  • python map函数 map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。 例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9...
  • python map

    千次阅读 2015-09-27 09:46:16
    python class 使用 #!/usr/bin/env python #coding=utf-8 #设置python编码 from operator import itemgetter import sys ###### class MyMap: def __init__(self): self.entity={} print('Initialize {0}'....

    python class 使用

    #!/usr/bin/env python
    #coding=utf-8 
    #设置python编码
    from operator import itemgetter
    import sys
    ######	
    
    class MyMap:
    	def __init__(self):
    		self.entity={}	
    		print('Initialize {0}'.format('MyMap'))
    	
    	def __del__(self):
    		print('析构函数MyMap size: {0:d}'.format(len(self.entity))) 
    		#del self.entity
    		del self
    		
    	
    	def hasConstantKey(self,key):
    		return self.entity.has_key(key)
    	
    	def put(self,key,val):
    		self.entity[key]=val
    	
    	def get(self,key):
    		if(self.hasConstantKey(key)):
    			return self.entity[key]
    		else:
    			return None	
    			
    	def toString(self):
    		return self.entity
    	
    	def keys(self):
    		return self.entity.keys()
    		
    	def values(self):
    		return self.entity.values()
    			
    	def remove(self,key):
    		del self.entity[key];
    	
    	def size(self):
    		return len(self.entity)
    	
    	@staticmethod
    	def staticMethodTest():
    		print '我来自静态方法'		
    		
    	@staticmethod
    	def staticTest(val):
    		if(val):
    			print 'val:',True
    		else:
    			print 'val:',False	
    		
    print	"-------------使用class的方式演示了系统自带字典使用-----------------"		
    myMap=MyMap()
    print myMap.hasConstantKey('abc')
    myMap.put('abc','sasdaasdas')
    print myMap.hasConstantKey('abc')
    print myMap.get('abc')
    
    print myMap.toString()
    print myMap.keys()
    print myMap.values()
    print myMap.size()
    print MyMap.staticMethodTest()
    MyMap.staticTest(myMap)
    


    运行Python

    $ python test_class.py 
    -------------使用class的方式演示了系统自带字典使用-----------------
    Initialize MyMap
    False
    True
    sasdaasdas
    {'abc': 'sasdaasdas'}
    ['abc']
    ['sasdaasdas']
    1
    我来自静态方法
    None
    val: True
    析构函数MyMap size: 1


    展开全文
  • 主要介绍了Python map和reduce函数用法示例,本文给出了两个函数的多个用法示例,需要的朋友可以参考下
  • python map传入两个参数

    千次阅读 2021-03-09 10:33:58
    def fun(x,y=0): #print(x,y) return x+y for each in map(fun, *zip([1,2],[3,4])): print(each)
    def fun(x,y=0):
        #print(x,y)
        return x+y
    for each in map(fun, *zip([1,2],[3,4])):
        print(each)
    
    
    展开全文
  • Python map函数

    万次阅读 多人点赞 2018-03-22 18:03:48
    Python函数编程中的map()函数是将func作用于seq中的每一个元素,并将所有的调用的结果作为一个list返回。如果func为None,作用同zip()。1、当seq只有一个时,将函数func作用于这个seq的每个元素上,并得到一个新的...
    

    格式:
    map(func, seq1[, seq2,…])
    第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一个集合。
    Python函数编程中的map()函数是将func作用于seq中的每一个元素,并将所有的调用的结果作为一个list返回。如果func为None,作用同zip()。

    1、当seq只有一个时,将函数func作用于这个seq的每个元素上,并得到一个新的seq。
    让我们来看一下只有一个seq的时候,map()函数是如何工作的。
    work
    从上图可以看出,函数func函数会作用于seq中的每个元素,得到func(seq[n])组成的列表。下面举得例子来帮助我们更好的理解这个工作过程。

    #使用lambda
    >>> print map(lambda x: x % 2, range(7))
    [0, 1, 0, 1, 0, 1, 0]
    • 1
    • 2
    • 3

    3

    #使用列表解析
    >>> print [x % 2 for x in range(7)]
    [0, 1, 0, 1, 0, 1, 0]
    • 1
    • 2
    • 3

    4
    一个seq时,可以使用filter()函数代替,那什么情况不能代替呢?

    2、当seq多于一个时,map可以并行(注意是并行)地对每个seq执行如下图所示的过程:
    2
    从图可以看出,每个seq的同一位置的元素同时传入一个多元的func函数之后,得到一个返回值,并将这个返回值存放在一个列表中。下面我们看一个有多个seq的例子:

    >>> print map(lambda x , y : x ** y, [2,4,6],[3,2,1])
    [8, 16, 6]
    • 1
    • 2

    5
    如果上面我们不使用map函数,就只能使用for循环,依次对每个位置的元素调用该函数去执行。还可以使返回值是一个元组。如:

    >>> print map(lambda x , y : (x ** y, x + y), [2,4,6],[3,2,1])
    [(8, 5), (16, 6), (6, 7)]
    • 1
    • 2

    7
    当func函数时None时,这就同zip()函数了,并且zip()开始取代这个了,目的是将多个列表相同位置的元素归并到一个元组。如:

    >>> print map(None, [2,4,6],[3,2,1])
    [(2, 3), (4, 2), (6, 1)]
    • 1
    • 2

    需要注意的是:
    map无法处理seq长度不一致、对应位置操作数类型不一致的情况,这两种情况都会报类型错误。如下图:
    8

    3、使用map()函数可以实现将其他类型的数转换成list,但是这种转换也是有类型限制的,具体什么类型限制,在以后的学习中慢慢摸索吧。这里给出几个能转换的例子:

    ***将元组转换成list***
    >>> map(int, (1,2,3))
    [1, 2, 3]
    ***将字符串转换成list***
    >>> map(int, '1234')
    [1, 2, 3, 4]
    ***提取字典的key,并将结果存放在一个list中***
    >>> map(int, {1:2,2:3,3:4})
    [1, 2, 3]
    ***字符串转换成元组,并将结果以列表的形式返回***
    >>> map(tuple, 'agdf')
    [('a',), ('g',), ('d',), ('f',)]
    #将小写转成大写
    def u_to_l (s):
      return s.upper()
    print map(u_to_l,'asdfd')
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    1、对可迭代函数'iterable'中的每一个元素应用‘function’方法,将结果作为list返回。
    来个例子:
    >>> def add100(x):
    ...     return x+100
    ...
    >>> hh = [11,22,33]
    >>> map(add100,hh)
    [111, 122, 133]
    就像文档中说的:对hh中的元素做了add100,返回了结果的list。

    2、如果给出了额外的可迭代参数,则对每个可迭代参数中的元素‘并行’的应用‘function’。(翻译的不好,这里的关键是‘并行’)
    >>> def abc(a, b, c):
    ...     return a*10000 + b*100 + c
    ...
    >>> list1 = [11,22,33]
    >>> list2 = [44,55,66]
    >>> list3 = [77,88,99]
    >>> map(abc,list1,list2,list3)
    [114477, 225588, 336699]
    看到并行的效果了吧!在每个list中,取出了下标相同的元素,执行了abc()。

    3、如果'function'给出的是‘None’,自动假定一个‘identity’函数(这个‘identity’不知道怎么解释,看例子吧)
    >>> list1 = [11,22,33]
    >>> map(None,list1)
    [11, 22, 33]
    >>> list1 = [11,22,33]
    >>> list2 = [44,55,66]
    >>> list3 = [77,88,99]
    >>> map(None,list1,list2,list3)
    [(11, 44, 77), (22, 55, 88), (33, 66, 99)]

    转自http://blog.csdn.net/seetheworld518/article/details/46959871

    展开全文
  • map函数是python的内置函数之一。 代码如下: def func(n): return len(n) x = map(func, ('hello', 'world')) print(x) # <map object at 0x0000020F8D6BD988> print(list(x)) # [5, 5] print(tuple(x))...
  • python Map 排序

    千次阅读 2018-05-03 23:08:23
    python字典按照value进行排序 例子如下: &gt;&gt;&gt; d = {'a':1,'b':4,'c':2} &gt;&gt;&gt; f = zip(d.values(), d.keys() ) &gt;&gt;&gt; f [(1, 'a'), (2, 'c'), (4, ...
  • Python map

    千次阅读 多人点赞 2016-10-16 23:14:41
    map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 # 1、调用function函数,返回一个list >>> def add100(x): return x+100 >>> hh = [11,...
  • ** 1,map函数的基本用法 ** 1,map()函数是python的内置函数 2,map() 函数语法:map(function, iterable, …) function:函数 。 iterable: 一个或多个序列 ...3,第一个参数 function 以参数...4,python3中map...
  • python map set函数用法

    千次阅读 2017-11-29 09:25:15
    map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。举例说明,比如我们有一个函数f(x)=x%2,要把这个函数作用在一个list [1, 2, 3, 4, 5, 6, 7,...
  • [python] Python map函数总结

    千次阅读 2021-07-21 21:30:27
    Python map函数总结 本文主要介绍如何使用PythonPython3版本)的内置map()函数。简单来说map()函数会将指定的函数依次作用于某个序列的每个元素,并返回一个迭代器对象。map语法如下,其中function表示我们指定的...
  • Python map() 函数

    千次阅读 2017-11-03 10:48:09
    map() 会根据提供的函数对指定序列做映射。 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。map(function, iterable, …) function – 函数,有两个...
  • 作为一个小白,今天刚看到map函数,如下: def f(x): return x*x a=[1,3,4,5] p=map(f,a) 这样的话,返回的p是一个迭代器,我刚开始以为p是一个列表(list),但是看了一下p的类型: print(type(p)) 得到的...
  • python map函数处理字典

    万次阅读 2017-12-07 16:13:07
    map函数返回的是一个list,那如何处理字典呢 >>> map(lambda x: x.upper(), a.values()) ['CHINA', 'SAMY'] 返回字典的方法: >>> a = dict(name='samy',addr='china') >>> dict(zip(a, map(lambda x: x.upper(),...
  • Python map() 函数 和 numpy mean()函数

    千次阅读 2019-08-19 19:05:30
    map(function, *iterables) function – 函数 iterable – 一个或多个序列 例子 def square(x) : # 计算平方数 return x ** 2 map(square, [1,2,3,4,5]) # 计算列表各个元素的平方 [1, 4, 9, 16, 25] ...
  • Python Map()方法的用法

    万次阅读 多人点赞 2017-06-23 15:27:17
    map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。 例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9] 如果希望把list的每个...
  • Python map()函数的用法

    万次阅读 多人点赞 2015-07-19 23:18:24
    Python函数式编程之map()Pythonmap()、filter()、reduce()这三个都是应用于序列的内置函数。 格式: map(func, seq1[, seq2,…]) 第一个参数接受一个函数名,后面的参数接受一个或多个可迭代的序列,返回的是一...
  • Python map()函数

    千次阅读 2019-10-25 23:38:48
    map() 函数会根据提供的函数对指定一个或多个序列做映射。 第一个参数 function 把参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。 语法: map(function, iterable, ......
  • python map()函数和lambda表达式

    万次阅读 多人点赞 2017-02-14 10:39:03
    python map(fun,[arg]+)函数最少有两个参数,第一参数为一个函数名,第二个参数是对应的这个函数的参数(一般为一个或多个list)。>>>def fun(x): ... return x+1 ... >>>list(map(fun,[1,2,3])) >>>[2,3,4]多参数...
  • python map、join函数

    千次阅读 2018-05-31 10:46:03
    map() 会根据提供的函数对指定序列做映射。 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。 map(function, iterable, ...) 其中 function -- ...
  • map()函数将一个全部为int的列表,转化为全部为str的列表 list(map(str,[1,2,3,4,5,6,7,8])) 参考文献: 1. python中的map()函数
  • python map函数和filter函数

    千次阅读 2020-06-29 18:02:04
    文章目录map函数filter函数 map函数 个人理解是对原来的序列进行操作,得到一个新的序列 list3 = [1, 2, 3, 4] list4 = map(lambda x: x*2, list3) print(list4) for i in list4: print(i, end=" ") print() list...
  • Python map()-reduce() 把字符串转换成浮点数

    万次阅读 多人点赞 2016-04-22 08:08:01
    我写此文的目的是帮助和我一样在廖雪峰老师官网上学习Python3的同学更好的理解和学习Python的知识,所以本博文及后续文章会跟着我的学习进度来走,主要内容是廖雪峰老师官网Python资料中每节知识点后的复习题的答案...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 298,666
精华内容 119,466
关键字:

pythonmap

python 订阅