回答編集履歴

1

ユニコードエラーについて追記

2017/07/04 12:46

投稿

miyahan
miyahan

スコア3095

test CHANGED
@@ -13,3 +13,19 @@
13
13
  f.write(unicode(line, 'utf-8').encode('shift-jis'))
14
14
 
15
15
  ```
16
+
17
+
18
+
19
+ 追記:ところで Shift-JIS は難しい漢字や特殊な記号に対応していません。それらを変換しようとすると、UnicodeEncodeError が発生します。これを回避するには error モードを replace (`?`に置換) か ignore (無視してスキップ) にします。
20
+
21
+
22
+
23
+ ```python
24
+
25
+ unicode(line, 'utf-8').encode('shift-jis')
26
+
27
+
28
+
29
+ unicode(line, 'utf-8').encode('shift-jis', errors='ignore')
30
+
31
+ ```