这是什么用法?

2014-09-17 23:45:31 +08:00
 haython
a = [1, 2, 3, 4]
print(','.join('%s' % id for id in a))

join里边的这段是什么意思?
3039 次点击
所在节点    Python
4 条回复
kzing
2014-09-18 00:25:30 +08:00
join里面是一个生成器表达式, '%s'用来转字符串. 相当于以下用法.

','.join(str(id) for id in a)

# or

','.join(map(str, a))
hiddenman
2014-09-18 16:05:16 +08:00
多看看Python基础书籍。
Melodic
2014-09-18 19:20:52 +08:00
人家问join里面的 是什么意思 - -就是表推导嘛
billlee
2014-09-18 22:06:51 +08:00
'%s' % id 是把变量 id format 成字符串
('%s' % id for id in a) 是一个 generator, 就是字面的意义,迭代 a 中的每个元素 id, 返回 '%s' % id
如果把圆括号改成放括号,即 ['%s' % id for id in a], 就是返回一个列表 ['1', '2', '3', '4']

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/134094

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX