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

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

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

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

Q&A

解決済

1回答

624閲覧

コマンドラインからPythonを実行するときにマルチバイト文字がある場合の対処法

essa

総合スコア81

Python

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

0グッド

0クリップ

投稿2021/10/28 12:36

お世話になります。標記について質問させていただきます。

Pythonをコマンドラインから実行するとき、対象とするpyファイルのフォルダパスに日本語(マルチバイト文字)がある場合、エラーがおきてしまいます。
具体的に言うと、ドキュメント直下におくと、ドキュメントが文字化けしてしまい、No such file or directoryとエラーになります。
どうすれば対処できるでしょうか。
フォルダ名を変えるとか、ファイルパスを変えるという対処法ではなく、マルチバイト文字があるままでも実行できるようにしたいです。

ご存知の方がいましたらご教示いただけますと幸いです。
どうぞよろしくお願い致します。

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

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

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

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

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

itagagaki

2021/10/28 12:45

OSとシェルは何ですか?
quickquip

2021/10/28 13:49 編集

> 具体的に言うと、ドキュメント直下におくと、ドキュメントが文字化けしてしまい、 どうやって実行しているのか(コマンドラインにどう入力しているのか)が全然具体的でないと思いますが。コマンドラインに実際に入力しているものを書くべきでしょう。 「ドキュメントが文字化けしてしまい」も質問者さんの解釈であって、具体的な情報ではありません。
essa

2021/10/28 23:44

itagagaki様 解決しました!コメントいただき、ありがとうございました!
quickquip

2021/10/28 23:50

解決した方法を自分で回答を記載して、自分をベストアンサーにして、解決済みにしましょう。(この欄に何かを書く必要はそんなにありません) https://teratail.com/help#resolve-myself
essa

2021/10/28 23:54

quickquip様 解決しました!コメントいただき、ありがとうございました! 具体的といいつつ具体的な質問をしておらず、失礼しました。 使い方としては、ShinyAppを作成しているのですが、途中でPythonの処理を挟みたく、R上でPythonを呼び出すという処理をするため、Rのsystem関数を使ってPytonを呼び出し、Pythonスクリプトを実行することを考えていました。 コマンドラインへの入力は sysytem("python","[実行対象スクリプト.py]")ですね。 実行対象スクリプトの置いてある場所に"ドキュメント"フォルダがあり、実行するにあたって[実行対象スクリプト.py]までのリンクにマルチバイト文字があるため"ドキュメント"が"繝峨く繝・繝。繝ウ繝・"と文字化けしてしまい、エラーがおきてしまったという次第です。 ただ、別の回答者さんであるppaul様がコメントしていただいたように、本当の名前でアクセスすることでエラーがおきずに実行できました。 上記が具体的に書いてみました。 回答者さんからすると、Rから実行するとか、そういうものは質問上必要のないものだとおもい、また私自身もそういう情報をわざわざ記載するよりも早く回答をいただきたかったのもあり、”全然具体的でない”質問になってしまいました。 今後、そのあたり気を付けて質問させていただきます。 ちなみに”そのあたり”というのは回答者が「この情報はあった方が回答しやすい」だろうという感覚をもって質問するということです。 長くなりましたが、コメントいただきありがとうございました。
guest

回答1

0

ベストアンサー

本当の名前でアクセスすれば良いと思います。

本当の名前とは、C:\Users\XXXX\Documents です。ここでXXXXはユーザ名です。

Pythonで使うときは、r"C:\Users\XXXX\Documents"としてください。

ユーザ名をアルファベットではなく日本語の文字を使った名前にした場合にはこれでは対応できないようです。

投稿2021/10/28 13:31

ppaul

総合スコア24666

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

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

essa

2021/10/28 23:56

こちらの方法でエラーがおきずにアクセスすることができました! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問