PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。
2017/04/29
Pythonで日本語(全角文字、マルチバイト文字)を使う方法
Pythonで日本語を指定する方法
Pythonで日本語(全角文字、マルチバイト文字)を使う場合は、最初に UTF-8などの文字コードを宣言する必要があります。
プログラムで printなどで使う場合にとどまらず、コメント行に日本語(全角文字、マルチバイト文字)を使う場合もこの設定をしないとエラーになります。
具体的には、UTF-8を指定する場合は、下記のような文字コードの宣言を 1行目に記述します。
|
1 |
# coding: utf-8 |
ちなみに、大文字小文字は区別されませんので、「UTF-8」と書いても問題ありません。
Pythonのパスを記述する場合は 2行目に記述
場合によっては、下記の様に 1行目には Pythonへのパスを記述する必要がある場合もありますので、その場合は、1行目に Pythonのパスを記述し、2行目に文字コード指定の記述を書きます。
|
1 2 |
#!/usr/bin/python # coding: utf-8 |
もちろん、ここで指定した文字コードとファイルの文字コードは一致するように保存します。
UTF-8以外の文字コードを指定する場合
UTF-8以外の文字コードの場合は、以下の通りに指定をします。
|
1 2 3 4 |
# coding: Shift_JIS # coding: EUC-JIS # coding: ISO-2022-JP # coding: CP932 |
Pythonのオフィシャルサイトでの記述方法
Pythonの基本的な処理としては「# coding: utf-8」だけ記述すれば動作します。
ですが、サンプルプログラムなどでは下記の様に「-*-」が付けられているものもよく見かけます。
この記述方法でも問題なく文字コードの指定することができます。
|
1 |
# -*- coding: utf-8 -*- |
では、なぜこの記述方法も広く見かけるのでしょうか?
理由の一つとしては、Pythonのオフィシャルサイトのドキュメントにその記述方法が書いてあるからではないでしょうか?
【Python Ver 2.7】
http://docs.python.jp/2.7/tutorial/interpreter.html#source-code-encoding
【Python Ver 3.5】
http://docs.python.jp/3.5/tutorial/interpreter.html#source-code-encoding
その他の理由としては、「Emacs」というエディタが文字コードを認識するためには、「# # -*- coding: utf-8 -*-」と記述する必要があるということもあるようです。
どちらでも動きますので、個々人の環境に合わせて好きな方を選択すればいいかと思います。
selenium+Pythonで処理の自動化に関する記事
Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ
PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。
Pythonをコマンドラインで実行。全角文字(日本語)を引数にする場合の対処方法
Selenium WebDriverでFirefoxをプライベートウィンドウ/Chromeをシークレットモードで起動する方法・言語はpython
Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ
Beautiful Soupを利用してPythonでスクレイピングを行う環境構築方法の解説
PythonでMySQLへの接続ライブラリMySQL-pythonの簡単インストール方法
PythonでURLの有無、存在をチェックするスクリプト
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ
ブラウザを自動操作しテストを実行するロボットをselenium WebDriver+Pythonの環境を構築し、動作確認までの手順のまとめ。初心者向けに詳細解説。サンプルソースも。
-
-
Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順
Gitはフォルダだけを管理対象にすることはできない。そのため空の.gitkeepファイルを作成し管理対象にすることで、それが入っているフォルダも管理対象にする、と言う手順で管理を行う。
-
-
直リンクとは何か?直リンクとディープリンクの違いと著作権問題
直リンクは著作権違反なのか?議論の前にまず「直リンク」の意味を正しく理解しよう。直リンクは他のサイトの画像を読み込む、ディープリンクなど多様な意味がある。
-
-
エックスサーバーで独自SSLは永久無料で取り放題。利用方法と理由を解説!
エックスサーバーでは独自SSLが無料でいくつでも設置できるように!しかも、国、都道府県などの数項目の入力と数クリックだけという超簡単!SSL化しない理由がない!
-
-
So-netのレンタルサーバHSはヤバイ・借りてはいけないレンタルサーバリスト
餅は餅屋。サーバはサーバ屋が提供するサービスを利用するべきという記事で、単独でSo-netを紹介。OEMでサービスの提供を受けているだけなので何とも残念すぎる内容。
-
-
Webサイト公開時に重複コンテンツを排除する.htaccessのリダイレクトの設定のまとめ
サイトを公開する際にはURLの正規化は必須です。正規化とは何かを解説し、.htaccessに設定すべきリダイレクトの設定を具体的に説明します。
-
-
.gitignoreで無視フォルダの中の特定のファイルを除外「!(否定文)」を使う場合の注意点
Gitで管理する対象、対象外のファイル、フォルダの指定は .gitignoreに記述する。その基本的な記述の方法に加え、無視対象にしたフォルダの中の特定のファイルを管理対象にする記述方法を解説。
-
-
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。
-
-
CentOS環境に ntpdをインストールして自動的に時刻を取得して合わせる設定にする
VirtualBoxに構築した CentOSの環境の時計がずれているとき、ntpdをインストールし、時計を合わせる方法を解説。NTPサーバを指定する方法や ntpdを自動起動する設定も解説。
-
-
日本語は2バイト文字?3バイト文字?
日本語は2バイトという理解でしたが、UTF-8では事情が違います。その説明です。