python3.5 如何用map做出和zip同样的效果?
大家讲道理
大家讲道理 2017-04-18 10:19:16
0
2
706

如下面这段代码,我想把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`

请各位大神赐教。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

membalas semua(2)
大家讲道理

peta(lambda a,b,c: (a,b,c), nama, umur, negara)

Ty80
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...

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!