回答編集履歴

1

テキストファイルからのインポート例を追加

2017/07/04 03:12

投稿

miyahan
miyahan

スコア3095

test CHANGED
@@ -32,17 +32,21 @@
32
32
 
33
33
  ...
34
34
 
35
+
36
+
37
+ print(a)
38
+
35
39
  ```
36
40
 
37
41
 
38
42
 
39
- また数値の一覧が予め用意されているなら、それをバラしてリストにするのがよいでしょう。
43
+ また数値の一覧が予め用意されているなら、それをバラしてリストにするのがよいでしょう。例えば改行で区切られた文字列がある場合は split() でリストに変換できます。
40
44
 
41
45
 
42
46
 
43
47
  ```python
44
48
 
45
- """改行で区切られた文字列からリストに変換"""
49
+ """"""
46
50
 
47
51
  text = """12
48
52
 
@@ -56,20 +60,34 @@
56
60
 
57
61
 
58
62
 
59
- """ split() を使う方法 """
60
-
61
- a = text.split('\n') # split()で改行ごとにバラしてリストに入れる
63
+ a = text.split('\n') # split()で改行(\n)ごとにバラしてリストに入れる
62
64
 
63
65
  for i in range(len(a)):
64
66
 
65
67
  a[i] = int(a[i]) # このままだと中身が文字列なので整数に変換
66
68
 
69
+ print(a)
67
70
 
68
71
 
72
+
69
- """ split() を使う方法 (内包表記を使った短縮版) """
73
+ """ 内包表記を使った短縮版 """
70
74
 
71
75
  a = [int(s) for s in text.split('\n')]
72
76
 
77
+ print(a)
78
+
79
+ ```
73
80
 
74
81
 
82
+
83
+ また数値が書かれたテキストファイルがある場合は、readlines() で一行ごとにバラしてリストに変換できます。
84
+
85
+
86
+
87
+ ```python
88
+
89
+ a = [int(s) for s in open('list.txt').readlines()]
90
+
91
+ print(a)
92
+
75
93
  ```