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

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

新規登録して質問してみよう
ただいま回答率
87.20%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Python

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

解決済

OSError: [Errno 22] Invalid argument の対処方法

yuuutaaa
yuuutaaa

総合スコア2

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Python

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

3回答

0評価

1クリップ

29304閲覧

投稿2020/09/30 06:46

編集2020/10/01 02:42

OSError: [Errno 22] Invalid argument の対処方法が知りたいです。
初心者のため基本的な部分でのミスかもしれません。
いくらか検索しましたが、有用な対処方法が見つからなかったため、質問させていただきます。

PythonでVS Codeを利用して、エクセルからデータの読み込みをしようとしました。
エクセルの読み取り専用は解除してあります。
エクセルは作成時のままで、何の加工もしていません。

書いたコードとターミナルは以下の通りです。
白の塗つぶしはユーザー名です。
イメージ説明
イメージ説明
宜しくお願い致します。

python

import openpyxl #PythonからExcelを操作 import pandas as pd #データ解析を支援する機能を提供するPythonのライブラリ import glob #特定の条件に一致するファイル名を取得 import_file_path='‪C:/Users/*******/Desktop/sample.xlsx' #ファイルのパスを作成 excel_sheet_name='発注管理表' #編集したいシートを指定 export_file_path='‪C:/Users/*******/Desktop/PYTHON/outoput' #ファイルのパスを作成 df_order=pd.read_excel(import_file_path, sheet_name=excel_sheet_name) #Excelファイルの内容を読み込む company_name=df_order['会社名'].unique() #会社名をユニークにして取得 for i in company_name: #フィルタリングして別ファイルに保存 print(i)

Terminal

(base) PS C:\Users*******\Desktop\PYTHON> & C:/Users/*******/Anaconda3/python.exe c:/Users/*******/Desktop/PYTHON/EXCELsample.py Traceback (most recent call last): File "c:/Users/*******/Desktop/PYTHON/EXCELsample.py", line 11, in <module> df_order=pd.read_excel(import_file_path, sheet_name=excel_sheet_name) #Excelファイルの内容を読み込む File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 304, in read_excel io = ExcelFile(io, engine=engine) File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 824, in __init__ self._reader = self._engines[engine](self._io) File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_xlrd.py", line 21, in __init__ super().__init__(filepath_or_buffer) File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 353, in __init__ self.book = self.load_workbook(filepath_or_buffer) File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_xlrd.py", line 36, in load_workbook return open_workbook(filepath_or_buffer) File "C:\Users*******\Anaconda3\lib\site-packages\xlrd\__init__.py", line 111, in open_workbook with open(filename, "rb") as f: OSError: [Errno 22] Invalid argument: '\u202aC:/Users/K2020019/Desktop/sample.xlsx'

追記
Macで同様にやってみたところ、エラーが出ずに処理できました。
rawを使っても同様のエラーが起こります。

自己解決いたしました。
ファイルのアドレスをすべて手打ちにしたらエラーが出なくなりました。
これまではコピペでやっていました。
コピペだとエラーになる理由が分からないので、教えていただけると嬉しいです。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

Bull

2020/09/30 09:55

ファイル名の先頭に付いている '\u202a' (Left-to-right embedding) は必要なのでしょうか?
yuuutaaa

2020/09/30 23:52

必要ないと思いますが、消し方が分からないです。
yuuutaaa

2020/10/01 00:59

アドレスをすべて手打ちにしたらできました。 もともとはコピペでした。 原因は分からないです。 今後の役に立つと思いますので、教えていただけると嬉しいです。
Bull

2020/10/01 01:29

エディタによっては、文字コードを表示する機能がありますが、VScode ではデフォルトではそのような機能はないようです。 私は、秀丸エディタで確認しましたが、そのような機能があるエディタで確認してみてください。 '\u202a' (Left-to-right embedding) は双方向テキスト (右側から書くか、左側から書くか) のための制御コードのひとつで、日本語とか英文だけを扱っている限りは必要ないです(と思います)。 ファイル名にアラビア語などを使用場合には必要になるのかも知れませんが、それでも先頭に挿入されることはないんじゃないかと思います。(私が知らないだけかも知れませんが)。 コピー元にどのように書かれていたのか分からないのでなんとも言えませんが。コピー元のパス名が間違っている可能性もありますね。
yuuutaaa

2020/10/01 01:41

勉強になります。 ありがとうございます!

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Python

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