『壹』 python map()函数问题

不知道你的dataSet 是什么数据,是否是从数据库取出来的结果游标,
如果是的 那么dataSet 只能用一次,用空之后它就为空了
检测方法
D = map(set,dataSet)
print dataSet #看看这里的 dataSet 是否为空了
如果是以上说的情况 很容易解决
操作之前 给 给个变量 接纳一哈 这个结果集
tmp = dateSet
D = map(set,tmp)
print len(list(D))
print len(list(D))

『贰』 python map函数传入多个参数后出错

def mul(x): return x*x def my_map(func, args): for n in args: print(func(n)) my_map(mul, [1,2,3,4])

『叁』 python map函数怎么用啊!

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)]

『肆』 求python的map函数

_tabkeys = map(int,tabkeys[1:_len])
相当来于_tabkeys[0] = int(tabkeys[1])
.... _tabkeys[i] = int(tabkeys[i+1])

这不正是你要的?自
例子:

>>> tabkeys=['1','2','3']
>>> _len = len(tabkeys)
>>> _tabkeys = map(int,tabkeys[1:_len])
>>> _tabkeys
[2, 3]

>>> _tabkeys[0]
2
>>> tabkeys[1]
'2'
>>>

如果这不是你想要的,请举例说明什么是想要的结果。

『伍』 假设python没有提供map()函数,请自行编写一个my_map()函数实现与map()相同的

#python的map,filter,rece等函数复都是为制了简化,方便循环list的函数。
#所以如果不用的话,就相当于把for循环展开
L=[1,2,3,4,5]
defmy_map(L):
result=[]
foreinL:
result.append(e*2+1)
returnresult
printmap(lambdax:x*2+1,L)#输出[3,5,7,9,11]
printmy_map(L)#输出[3,5,7,9,11]
#不用函数
print[x*2+1forxinL]#输出[3,5,7,9,11]
#不用函数计算大于等于3的
print[x*2+1forxinLifx>=3]#输出[7,9,11]
#使用mapfilter计算大于等于3的,
printmap(lambdax:x*2+1,filter(lambdax:x>=3,L))#输出[7,9,11]

『陆』 python 3.5 map 函数 提示<map object at 0x000000000A32A320>

python3相对python2map返回有点小变化
print(list(map(lambda...,...)))
要想得到列表得用list()转换哈否者得到是map对象

『柒』 Python 3.5.1的map函数结果输出一串字符

python3
map和zip一样返回的是迭代子,而不是所有的结果,你可以通过next函数获取下一个或者外加list获取全部

『捌』 python中map函数

map在python2返回list,在python3返回iterator.


如果想在python3得到可以反复重用的list,只要把iterator转成list即可:

lst_result=list(map(func,items))

『玖』 Python中map()问题

map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。

你传入的 '12345'字符串也是属于列表。每个元素就是 ['1','2','3','4','5']

所以第一个输出的无可厚非。

第二个报错其实原因就是因为你的digits里面没有'1'这个key,所以会报错。

根本不会出现'12345'这个key的。如果想出现,就把代码修改下

defchar(s):
digits={'0':0,'12345':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
returndigits[s]
list(map(char,['12345','2','3','4','5']))

『拾』 python中使用map()和直接使用list()有啥不一样啊

Map接口:Map没有继承Collection接口,Map提供key到value的映射。一个版Map中不能包含相同的key,每个key只能映射一个 value。Map接口提供权3种集合的视图,Map的内容可以被当作一组key集合,一组value集合,或者一组key-value映射。
List接口:List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。
和下面要提到的Set不同,List允许有相同的元素。
除了具有Collection接口必备的iterator()方法外,List还提供一个listIterator()方法,返回一个 ListIterator接口,和标准的Iterator接口相比,ListIterator多了一些add()之类的方法,允许添加,删除,设定元素,还能向前或向后遍历。
实现List接口的常用类有LinkedList,ArrayList,Vector和Stack。