我正在玩列表理解,并且在另一个站点上遇到了这个小片段:
return ''.join([`num` for num in xrange(loop_count)])
我花了几分钟尝试复制功能(通过键入),然后才意识到`num`
它被破坏了。
用这些字符括起来的语句有什么作用?从我所看到的相当于str(num)。但是当我计时的时候:
return ''.join([str(num) for num in xrange(10000000)])
它需要4.09秒,而:
return ''.join([`num` for num in xrange(10000000)])
需要2.43秒。
两者都给出相同的结果,但是要慢得多。这里发生了什么?
编辑:奇怪的是...repr()
给出的结果比稍慢`num`
。2.99秒和2.43秒。使用Python 2.6(尚未尝试3.0)。