回答編集履歴
3
説明文修正
answer
CHANGED
@@ -39,7 +39,7 @@
|
|
39
39
|
```
|
40
40
|
|
41
41
|
|
42
|
-
計算量自体は変わらないので、大規模なデータの扱いに対する回答ではありません。
|
42
|
+
計算量のオーダー自体は変わらないので、大規模なデータの扱いに対する回答ではありません。
|
43
43
|
明らかに冗長で効率化・改善が可能な部分の指摘です。
|
44
44
|
|
45
45
|
|
2
簡略化したコードの追加
answer
CHANGED
@@ -28,9 +28,14 @@
|
|
28
28
|
tree.insert("", "end", values=row)
|
29
29
|
|
30
30
|
# 中の要素を編集したい場合は
|
31
|
-
|
32
31
|
for num, name, text in items:
|
33
32
|
tree.insert("", "end", values=(num, name, text))
|
33
|
+
|
34
|
+
# 事前リストを作らず
|
35
|
+
def tree_insert(self):
|
36
|
+
tree_insert = self.tree.insert # ループ内で呼び出すメソッドをローカル変数に入れておく
|
37
|
+
for i in range(10000):
|
38
|
+
tree_insert("", "end", values=(i, "犬", "ワンと鳴く"))
|
34
39
|
```
|
35
40
|
|
36
41
|
|
1
不要なコードの削除
answer
CHANGED
@@ -33,17 +33,7 @@
|
|
33
33
|
tree.insert("", "end", values=(num, name, text))
|
34
34
|
```
|
35
35
|
|
36
|
-
テスト用のデータであれば、ジェネレータにすれば事前のリストは作らずに済ませられます。
|
37
36
|
|
38
|
-
```python
|
39
|
-
def generate_tree_items(count):
|
40
|
-
for i in range(count):
|
41
|
-
yield (i, "犬", "ワンと鳴く")
|
42
|
-
|
43
|
-
for row in generate_tree_items(10000):
|
44
|
-
tree.insert("", "end", values=row)
|
45
|
-
```
|
46
|
-
|
47
37
|
計算量自体は変わらないので、大規模なデータの扱いに対する回答ではありません。
|
48
38
|
明らかに冗長で効率化・改善が可能な部分の指摘です。
|
49
39
|
|