質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

259閲覧

Pythonで日本語を扱う方法について

Tatsuo_Iriyama

総合スコア50

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/10/13 14:44

編集2018/10/13 14:54

##現状

現在Pythonで機械学習について勉強をしています。
そこであるエラーが発生しました。

[vagrant@local hoge]$ python hoge.py File "hoge.py", line 11 SyntaxError: Non-ASCII character '\xe3' in file hoge.py on line 11, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

スクリプトを実行しようとしたら、このようなエラーが発生しました。

コードを見ると対象となる部分は、コメントアウトされた日本語の部分でした。

試しにその日本語を外すと、問題なく実行されました。

色々調べてみましたら、日本語を扱うためには、# coding: UTF-8を宣言しなくてはならないと書かれていたので、記載して、コメントアウトありの状態で再度実行したらうまく行きました。

##疑問点

  1. Pythonで日本語を扱う場合、この方法でしか扱うことができないのか?
  2. 別の方法で扱えるとしたら、どうすればいいのか?

この2点の疑問を教えて頂きたいです。

2に関しては、1が私が試した方法以外の方法が存在する場合のみの疑問点となりますので、他の方法があれば教えて頂きたいと思います。

よろしくお願い致します。

##別件

全くの別件なのですが、

predict関数とは結局どういった関数なのか、調べてもよくわからなかったので、別件として記載致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jun68ykt

2018/10/13 15:01

こんにちは。Python のバージョン2系をお使いの場合、 3系にバージョンアップすると # coding: UTF-8 が不要になるのではと思います。
guest

回答1

0

ベストアンサー

ソースに記述した日本語がUTF-8でエンコードされていると仮定して、

  1. Python 2.xを使用している限り、それ以外に現実的な方法はありません。
  2. Python 3.xを使用する or Python 2.xを使用して日本語もascii文字を使用してソースに記述しするようにする。

2の後者については、コメントを日本語で書くことは叶わなくなりますが、Python 2.xでu"\u3042"と記述すればそれはu"あ"と等価になります。

細かく突き詰めると色々と難しので素直にPython 3.x(今なら3.6や3.7あたり)を使用するようにしましょう。

投稿2018/10/13 17:23

YouheiSakurai

総合スコア6142

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Tatsuo_Iriyama

2018/10/14 08:26

回答ありがとうございます。 そうなのですね。という事は、Python3系が出ていない頃は色々面倒だったんですね。 Python3系にしようと思います。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問