Python 列表综合如何自动递增

Yhzhtk 2013-07-24 04:49:05
a = [3,1,5,6]
b = [(1,3),(2,1),(3,5),(4,6)]

能不能使用列表综合从a得到b(包含一个自动递增的数)
如:

i = 0
b = [(++i, l) for l in a]


因为Python没有i++,所以会出错。我想简单点,直接像列表综合这样一句话搞定,应该怎么写呢?
...全文
308 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yhzhtk 2013-07-25
  • 打赏
  • 举报
回复
引用 2 楼 snmr_com 的回复:
enumerate() 第二个参数默认为0可省略(序号从0开始),你这个是从1开始,所以要指定
非常感谢!
ImN1 2013-07-24
  • 打赏
  • 举报
回复
enumerate() 第二个参数默认为0可省略(序号从0开始),你这个是从1开始,所以要指定
ImN1 2013-07-24
  • 打赏
  • 举报
回复
请看内置函数 enumerate() b = [(i, x) for i, x in enumerate(a, 1)]

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧