Rumah > Soal Jawab > teks badan
如下面这段代码,我想把map和zip做出同样的效果
name=['a','b','c']
age=[10,11,12]
nation=['中国','にほん','Deutsch']
U1=list(zip(name,age,nation))
print(U1)
U2=map(None,name,age,nation)
print(list(U2))
可是显示:
[('a', 10, '中国'), ('b', 11, 'にほん'), ('c', 12, 'Deutsch')]
Traceback (most recent call last):
File "F:/python/PT/program/nine neijian3.py", line 8, in <module>
print(list(U2))
TypeError: 'NoneType' object is not callable
但是我去掉map里面的None:
U2=map(name,age,nation)
print(list(U2))
显示:
print(list(U2))
TypeError: 'list' object is not callable`
请各位大神赐教。
PHP中文网2017-04-18 10:21:16
name=['a','b','c']
age=[10,11,12]
nation=['中国','にほん','Deutsch']
U1=list(zip(name,age,nation))
print(U1)
U2 = map(lambda a,b,c: (a,b,c), name, age, nation)
print(list(U2))
Ralat pertama NoneType
adalah untuk objek Tiada, jadi adalah perkara biasa bahawa ia tidak boleh dikeluarkan.
NoneType ialah jenis untuk objek None, iaitu objek yang menunjukkan tiada nilai Anda tidak boleh menambahkannya pada rentetan atau objek lain.
Kaedah Python map() nampaknya tidak digunakan dengan cara ini Setahu saya, ia sepatutnya seperti ini.
Penerangan
sangat mudah Parameter pertama menerima nama fungsi, dan parameter kedua menerima objek boleh lelaran.
Syntax
map(f, iterable)
pada asasnya bersamaan dengan:
[f(x) for x in iterable]
Instance
>>> def add100(x):
... return x+100
...
>>> hh = [11,22,33]
>>> map(add100,hh)
[111, 122, 133]
http://stackoverflow.com/ques...