回答編集履歴
1
合算処理を追記しましたよ。
answer
CHANGED
@@ -59,4 +59,23 @@
|
|
59
59
|
※インデントを直すとさらにBublesort,Random_method関数とlineがエラーになりましたので、
|
60
60
|
setup_stmtという文字列を作ってtimeit()にsetupを追加してエラーを解消しました。
|
61
61
|
ここらへんの使いこなしは公式のDocumentなどを参考にしてみて下さい。
|
62
|
-
[timeit:Python2](http://docs.python.jp/2.7/library/timeit.html)
|
62
|
+
[timeit:Python2](http://docs.python.jp/2.7/library/timeit.html)
|
63
|
+
|
64
|
+
##(追記)出力値の合算
|
65
|
+
```python
|
66
|
+
# 値をを足し込む入れ物を追加しました
|
67
|
+
out = Decimal(0.0)
|
68
|
+
|
69
|
+
with open("s_num.txt") as tf:
|
70
|
+
for line in tf:
|
71
|
+
#自作の関数がtimeitで参照できないため、setupを追加しています。
|
72
|
+
setup_stmt = "from __main__ import Bublesort,Random_method;line = " + line
|
73
|
+
t = timeit.Timer("Bublesort(Random_method(float(line)))",setup=setup_stmt)
|
74
|
+
print t.timeit(1)
|
75
|
+
|
76
|
+
#合計値を足していきます / 小さすぎる値を足すときには精度が悪くなるのでDecimalを使います
|
77
|
+
out += Decimal(t.timeit(1))
|
78
|
+
|
79
|
+
#表示
|
80
|
+
print out
|
81
|
+
```
|