回答編集履歴

2

修正

2017/09/14 01:31

投稿

can110
can110

スコア38268

test CHANGED
@@ -164,9 +164,9 @@
164
164
 
165
165
 
166
166
 
167
- 提示コード中の`print`エラーが発生する原因は、標準出力のエンコーディング`US-ASCII`が日本語に対応していないためだと思われます。
167
+ 当回答のコメント欄にて提示された`print`エラーの原因についてです、質問本文のエンコーディングと異なることから推測するCGI動作させ、その標準出力のエンコーディング`US-ASCII`が日本語に対応していないためだと思われます。
168
168
 
169
- また、ターミナル(シェル)上とCGI上では標準出力のエンコーディングが異なる可能性が高いことにご注意ください。
169
+ ここで、ターミナル(シェル)上とCGI上では標準出力のエンコーディングが異なる可能性が高いことにご注意ください。
170
170
 
171
171
  その理由と解決方法(TextIOWrapperで標準出力を開き直す)は以下に記載されています。
172
172
 

1

実行環境の違いについて追記

2017/09/14 01:31

投稿

can110
can110

スコア38268

test CHANGED
@@ -157,3 +157,21 @@
157
157
  BOS/EOS,*,*,*,*,*,*,*,*
158
158
 
159
159
  ```
160
+
161
+
162
+
163
+ #### 実行環境の違いについて追記
164
+
165
+
166
+
167
+ 提示コード中の`print`でエラーが発生する原因は、標準出力のエンコーディング`US-ASCII`が日本語に対応していないためだと思われます。
168
+
169
+ また、ターミナル(シェル)上とCGI上では標準出力のエンコーディングが異なる可能性が高いことにもご注意ください。
170
+
171
+ その理由と解決方法(TextIOWrapperで標準出力を開き直す)は以下に記載されています。
172
+
173
+ [[python3]デフォルト文字コードの指定(CGI実行時)](http://chidipy.jpn.com/topics/?p=309)
174
+
175
+ すなわち、ターミナルでは動作するのにCGIではエンコーディングエラーが発生するなどがありえます。
176
+
177
+