質問するログイン新規登録

質問編集履歴

3

エラー画面の追加

2018/11/19 05:38

投稿

hiro329
hiro329

スコア19

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,4 @@
1
- 例題でmakefileで実行してファイルを作成するものがあります。
1
+ ![イメージ説明](06e340c11f72b3d4f9aa2fd1ee10ab44.jpeg)例題でmakefileで実行してファイルを作成するものがあります。
2
2
  しかし、makefileの実行方法がわかりません。
3
3
  昔、Cで組み込み開発していた時は、パスを通して実行していた記憶がありますが、忘れてしまっています。
4
4
  pythonのmakefileはどのように実行したらいいのでしょうか。

2

ソースの追記

2018/11/19 05:38

投稿

hiro329
hiro329

スコア19

title CHANGED
File without changes
body CHANGED
@@ -10,7 +10,9 @@
10
10
  よろしくおねがいいたします。
11
11
  makefileの中身は、以下になります。
12
12
 
13
- # download page: https://nknet.ninjal.ac.jp/nuc/templates/nuc.html
13
+ makefile
14
+
15
+ ```ここに言語を入力
14
16
  CORPUS_URL = http://mmsrv.ninjal.ac.jp/nucc/nucc.zip
15
17
  ZIP_FILE = nucc.zip
16
18
  UNZIP_DIR = nucc
@@ -40,6 +42,7 @@
40
42
  $(UNZIP_DIR): nucc.zip
41
43
  $(UNZIP) -x $(ZIP_FILE)
42
44
  ```
45
+ ```
43
46
  -*- coding: utf-8 -*-
44
47
 
45
48
  import os, sys

1

ソースの追加

2018/11/19 02:39

投稿

hiro329
hiro329

スコア19

title CHANGED
File without changes
body CHANGED
@@ -38,4 +38,73 @@
38
38
  $(WGET) $(CORPUS_URL)
39
39
 
40
40
  $(UNZIP_DIR): nucc.zip
41
- $(UNZIP) -x $(ZIP_FILE)
41
+ $(UNZIP) -x $(ZIP_FILE)
42
+ ```
43
+ -*- coding: utf-8 -*-
44
+
45
+ import os, sys
46
+
47
+ try:
48
+ unicode
49
+ import codecs
50
+ sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
51
+ def copen(fname, mode):
52
+ return codecs.open(fname, mode, "utf-8")
53
+ except:
54
+ def copen(fname, mode):
55
+ return open(fname, mode, encoding='utf-8')
56
+
57
+ nuc_dir = "nucc"
58
+
59
+ def make_sequence_from_file(fname):
60
+ fname = os.path.join(nuc_dir, fname)
61
+ if not os.path.exists(fname):
62
+ raise Exception("no %s file." % fname)
63
+ last_line = None
64
+ sequence = []
65
+ with copen(fname, "r") as f:
66
+ try:
67
+ for line in f:
68
+ uline = line
69
+ if uline[0] == u'@':
70
+ continue
71
+ if uline[0] == u'F' or uline[0] == u'M':
72
+ if last_line is None:
73
+ last_line = uline
74
+ continue
75
+ else:
76
+ seq_input = last_line[5:-1]
77
+ seq_output = uline[5:-1]
78
+ last_line = uline
79
+ sequence.append((seq_input, seq_output))
80
+ else:
81
+ last_line = None
82
+ except:
83
+ sys.stderr.write("skip %s (not euc-jp)\n" % fname)
84
+ sys.stderr.flush()
85
+ return []
86
+ return sequence
87
+
88
+ def main():
89
+ if not os.path.exists(nuc_dir):
90
+ raise Exception("no extracted files.")
91
+
92
+ files = os.listdir(nuc_dir)
93
+ uniq_seq = {}
94
+ for f in files:
95
+ if not ".txt" in f:
96
+ continue
97
+ seq = make_sequence_from_file(f)
98
+ for inp, out in seq:
99
+ uniq_seq[inp] = out
100
+ for k, v in uniq_seq.items():
101
+ print("input: %s\noutput: %s" % (k, v))
102
+ return
103
+
104
+
105
+ if __name__ == "__main__":
106
+ main()
107
+ sys.exit(0)
108
+ #
109
+ コード
110
+ ```