Discuss / Python / 关于列表生成式的一个问题,求大神解惑

关于列表生成式的一个问题,求大神解惑

Topic source

d = {'x': 'A', 'y': 'B', 'z': 'C' } [k + '=' + v for k, v in d.items()] ['y=B', 'x=A', 'z=C'] 这个运行没有问题 但是如下就会出错 d = {'A':1,'B':2,'C':3} [k + '=' + v for k,v in d.items()] 能解释下为什么吗?难道使用列表生成式的时候dict内部的value只能是str类型?

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

那是因为'A' + 1出错了,跟列表生成式没有任何关系

换个写法:

['%s = %s' % (k, v) for k, v in d.items()]

这个样子哦,谢谢廖老师的解答。


  • 1

Reply