不完美的基準,但爲什麼Python的str.format比字符串連接
$python --version
Python 3.4.2
$ python -m timeit 'print("foo" + str(3.14) + "bar")'
100000 loops, best of 3: 16.4 usec per loop
$ python -m timeit 'print("foo{}bar".format(3.14))'
100000 loops, best of 3: 19.2 usec per loop
'format()'比單純的字符串連接強大得多,所以我不認爲這個(如果它根本就是一個顯着的區別)是令人驚訝的。 – 2014-11-06 11:59:48
你應該刪除'print'調用,這是沒有理由的。 – interjay 2014-11-06 12:01:54
我在沒有''print''命令的i7筆記本電腦上多次運行這個程序。它們同樣快,每循環0.345次(+/- 0.004 usec)。包括打印命令與29.7 usec(+/- 0.1 usec)都沒有區別。在所有人都認爲性能存在差異之前,您可以使用多個測試的結果更新問題,而不需要使用打印命令。 – 2014-11-06 12:11:20