エラーメッセージがtaskhandler.pyから言う: with open('./tasks.csv','r') as task_data: FileNotFoundError: [Errno 2] No such file or directory: './tasks.csv'
FileNotFoundError:[errnoを2]、そのようなファイルやディレクトリはありませんが、しかし、ファイルが存在し
しかし、それはそこに実際にある:
.
├── feature
│ ├── __init__.py
│ ├── styles
│ │ ├── __init__.py
│ │ ├── termcolor.pyc
│ │ ├── text_style.py
│ ├── taskhandler.py
│ └── tasks.csv
├── __init__.py
├── start.py
1 directories, 8 files
はtaskhandler.py
...
def update_program(taskobj):
with open('./tasks.csv','r') as task_data:
csv_reader = csv.reader(task_data)
next(csv_reader)
for line in csv_reader:
if line in taskobj:
pass
else:
taskobj.append(line)
task_data.close()
...
のコードです
この問題を回避するにはどうすればよいですか?ファイルを開く方法に間違いがありますか?他のコンピュータで試してみましたが、正常に動作します。
UPDATE
注: あなたは全体のソースコードを見たい場合は、私のgithub accountに先に行くか、あなたがプログラムを試してみて、実際のエラーを見たいと思った場合、pip3 install pydotask
や種類、あなたの中に端末pydo
。上記のコードとディレクトリの一部はgithubとpipのインストールで少し編集して再構成します。しかし、問題は同じままです。
これはCLIプログラムですので、Linuxで試してみることをお勧めします。
"tasks.csv"という名前のファイルが存在する可能性がありますが、プログラムは別の場所で探している可能性があります。 "./"は、スクリプトがどこにあるかを参照するものではなく、現在の作業ディレクトリを参照します。それらは全く異なる2つの場所にすることができます。 Pythonが「ファイルが見つかりません」と言っているのであれば、そこには存在しないと仮定するのは安全です。 –
あなたは 'open(" tasks.csv ")'を試してみましたか?( "./")? –
with-statementの前に 'import os;を実行してください。 print(os.getcwd()) '。現在のディレクトリが 'tasks.csv'を含むディレクトリではないことがわかります。正しい絶対パスまたは相対パス( 'os.path.join(parent_path、 'tasks.csv')')を指定する必要があります。 (あなたは代わりに 'os.chdir()'で作業ディレクトリを変更することができますが、それをしないでください) –