Чтение файла из каталога - PullRequest
0 голосов
/ 12 апреля 2019

Я пытаюсь прочитать файл в каталоге ./resources/input_file.utf8.Однако, когда я компилирую следующий код из терминала с помощью команды:

 python namefile.py input

, появляется эта ошибка:

[Errno 2] No such file or directory: 'input'

Это мой код:

from argparse import ArgumentParser


def parse_args():
    parser = ArgumentParser()
    parser.add_argument("input_path", help="./resources/input_file.utf8")

    return parser.parse_args()


def foo(input_path):

    file_input = open(input_path, "r", encoding='utf-8-sig') 
    for line in file_input:
    [...]


if __name__ == '__main__':
    args = parse_args()
    predict(args.input_path)

Одна из спецификаций, которую я должен соблюдать, это не помещать жесткие пути непосредственно в функцию foo, а только в функцию parser.add_argument ().

Как я могу это исправить?

1 Ответ

1 голос
/ 12 апреля 2019

Если вы запускаете команду python namefile.py input, убедитесь, что:

1) Файлы - Ваш входной файл и скрипт python находятся в одной папке.

2) Местоположение - Рабочий каталог в вашем терминале содержит файлы (для проверки используйте pwd ).

3) Имя файла - Ваше имя файла точно input и , а не input.txt или input.utf8.


Если ваш файл находится по указанному вами путив вашем примере вам потребуется вызвать скрипт с этим путем.

Пример:

python namefile.py "./resources/input_file.utf8"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...