8
C ++では文字列の分割がPythonよりも遅いのはなぜですか?
少し速度を上げて、さびたC ++のスキルを磨くために、一部のコードをPythonからC ++に変換しようとしています。昨日、標準入力から行を読み取る単純な実装がPythonではC ++よりもはるかに高速だったときにショックを受けました(これを参照)。今日、ようやくC ++で文字列をマージ区切り文字(pythonのsplit()と同様のセマンティクス)で分割する方法を見つけ、deja vuを体験しました!私のC ++コードは、作業を実行するのにはるかに長い時間がかかります(昨日のレッスンの場合のように、1桁以上ではありません)。 Pythonコード: #!/usr/bin/env python from __future__ import print_function import time import sys count = 0 start_time = time.time() dummy = None for line in sys.stdin: dummy = line.split() count += 1 delta_sec = int(time.time() - start_time) print("Python: Saw {0} lines in {1} seconds. ".format(count, …