回答編集履歴

8

さらにさらに追記、、何度もすみません。。

2017/10/04 03:40

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -120,4 +120,10 @@
120
120
 
121
121
  ```
122
122
 
123
- これがうまく行くかも試していただけると幸いです。色々とお願いしてすみません…m(_ _)m
123
+ これがうまく行くかも試していただけると幸いです。
124
+
125
+ 出力(`print()`)に問題がある場合はこれも`UnicodeEncodeError`になるはずです。
126
+
127
+
128
+
129
+ 色々とお願いしてすみません…m(_ _)m

7

さらに追記

2017/10/04 03:40

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -86,8 +86,38 @@
86
86
 
87
87
 
88
88
 
89
- - print("こんにちは、私はペッパーです")を実行してみる
89
+ - `print("こんにちは、私はペッパーです")`を実行してみる
90
90
 
91
91
  - `UnicodeEncodeError`と言われたら下記URLにしたがい設定を確認してみる
92
92
 
93
93
  [Python 3で日本語をprintする際のUnicodeEncodeErrorはLANGに気をつける](https://qiita.com/toshihikoyanase/items/47407551d8f3d4e8c39a)
94
+
95
+
96
+
97
+ ##
98
+
99
+
100
+
101
+ 一か八かですけど、
102
+
103
+
104
+
105
+ ```python
106
+
107
+ import codecs
108
+
109
+
110
+
111
+ byt = u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'.encode('utf-8')
112
+
113
+ jap_str = codecs.decode(byt,encoding='utf-8')
114
+
115
+
116
+
117
+ print(byt)
118
+
119
+ print(jap_str)
120
+
121
+ ```
122
+
123
+ これがうまく行くかも試していただけると幸いです。色々とお願いしてすみません…m(_ _)m

6

追記しました。

2017/10/04 03:36

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -69,3 +69,25 @@
69
69
  挙げていただいたコードは`class`の内部ですね?妙なインデントがありましたし、`self`がありましたので。
70
70
 
71
71
  見やすさのためにインデントは消しましたので、実際にコードに組み込む際は適切にインデントしてください。m(_ _)m
72
+
73
+
74
+
75
+ ## 追記
76
+
77
+
78
+
79
+ 出力回りは私も実は苦手なんですよね(なぜ回答したって感じですね苦笑)
80
+
81
+
82
+
83
+ そもそも日本語が出力できる環境ではないのではないでしょうか?
84
+
85
+ 確認してみてください。m(_ _)m
86
+
87
+
88
+
89
+ - print("こんにちは、私はペッパーです")を実行してみる
90
+
91
+ - `UnicodeEncodeError`と言われたら下記URLにしたがい設定を確認してみる
92
+
93
+ [Python 3で日本語をprintする際のUnicodeEncodeErrorはLANGに気をつける](https://qiita.com/toshihikoyanase/items/47407551d8f3d4e8c39a)

5

細かい変更点

2017/10/04 03:30

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -8,7 +8,13 @@
8
8
 
9
9
 
10
10
 
11
- 以下は出力が`[INFO ] behavior.box :onInput_onStart:25 _Behavior__lastUploadedChoregrapheBehavior945602960:/sqlite_4: [("u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'",)]`であったと仮定して書いています。(`u'\`の前と最後の`'`の後に`"`を入れて考えています。)
11
+ 以下は出力が`[INFO ] behavior.box :onInput_onStart:25 _Behavior__lastUploadedChoregrapheBehavior945602960:/sqlite_4: [("u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'",)]`であったと仮定して書いています。(`u'\`の前と最後の`'`の後に`"`を入れて考えています。またこれはこちらの都合※なのですが、`\u`ではなく`\u`としています。)
12
+
13
+
14
+
15
+ ※こちらの都合
16
+
17
+ `print("u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'")`の出力結果が`u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'`であるため、当初これを想定してコードを書きました。
12
18
 
13
19
 
14
20
 

4

追記

2017/10/03 13:57

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- 一度試しに`self.logger.info(result[0][0])`を実行してその結果も載せていただけるとありがたいです。m(_ _)m
7
+ 一度試しに`self.logger.info(result[0][0])`と`print(result[0][0])`を実行してその結果も載せていただけるとありがたいです。m(_ _)m
8
8
 
9
9
 
10
10
 

3

文言の追加

2017/10/03 13:10

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -1,4 +1,6 @@
1
1
  出力は本当に`[INFO ] behavior.box :onInput_onStart:25 _Behavior__lastUploadedChoregrapheBehavior945602960:/sqlite_4: [(u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059',)`であっていますか?
2
+
3
+ (決して疑っているわけではありませんが、どうやったらこの出力になるかがわからないんです。。(^ ^;すみません。。)
2
4
 
3
5
 
4
6
 

2

気づいた点の追記

2017/10/03 12:51

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -1,3 +1,19 @@
1
+ 出力は本当に`[INFO ] behavior.box :onInput_onStart:25 _Behavior__lastUploadedChoregrapheBehavior945602960:/sqlite_4: [(u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059',)`であっていますか?
2
+
3
+
4
+
5
+ 一度試しに`self.logger.info(result[0][0])`を実行してその結果も載せていただけるとありがたいです。m(_ _)m
6
+
7
+
8
+
9
+ 以下は出力が`[INFO ] behavior.box :onInput_onStart:25 _Behavior__lastUploadedChoregrapheBehavior945602960:/sqlite_4: [("u'\u3053\u3093\u306b\u3061\u306f\u3001\u79c1\u306f\u30da\u30c3\u30d1\u30fc\u3067\u3059'",)]`であったと仮定して書いています。(`u'\`の前と最後の`'`の後に`"`を入れて考えています。)
10
+
11
+
12
+
13
+ ##
14
+
15
+
16
+
1
17
  ```python
2
18
 
3
19
  import os.path,sqlite3
@@ -14,13 +30,21 @@
14
30
 
15
31
 
16
32
 
33
+ # ↓追加してください。
34
+
35
+ result = result[0][0].replace("u","",1).replace("\'","")
36
+
37
+
38
+
17
39
  jap_result = ""
18
40
 
19
- for m in re.finditer("\\u....",result[0][0]):
41
+ for m in re.finditer("\\u....",result):
20
42
 
21
43
  jap_result += chr(int(m.group()[2:],16))
22
44
 
23
45
  result = jap_result
46
+
47
+ # ↑追加してください。
24
48
 
25
49
 
26
50
 

1

文言の追加

2017/10/03 12:42

投稿

namnium1125
namnium1125

スコア2043

test CHANGED
@@ -31,3 +31,9 @@
31
31
 
32
32
 
33
33
  ちょっと自信ないですけどこれでどうでしょうか?
34
+
35
+
36
+
37
+ 挙げていただいたコードは`class`の内部ですね?妙なインデントがありましたし、`self`がありましたので。
38
+
39
+ 見やすさのためにインデントは消しましたので、実際にコードに組み込む際は適切にインデントしてください。m(_ _)m