Определение пути в Google Colab

#python #path #google-colaboratory

Вопрос:

Кто-то дал мне доступ к их папке, которая содержит записную книжку .ipynb и несколько папок с файлами. Я скачал его и загрузил на свой диск. Две подпапки, которые мне нужны,-это подпапка_a с несколькими .txt файлами и подпапка_b, в которой есть другие подпапки, содержащие некоторые модели машинного обучения. Позже я, например, загрузил несколько дополнительных текстовых файлов в подпапку_a mytext.txt .

Я указал путь:

 path = "/content/gdrive/MyDrive/The_Folder/"
t5 ="t5_ml_file"
ml_path = path   "Subfolder_B/"   t5
textname= path   "Subfolder_A/"   "mytext.txt"
f = open(textname,"r")
full_text = f.read()
 

Я получаю сообщение об ошибке в предпоследней строке, в котором говорится, что файл не найден mytext.txt . Я думаю, что путь указан правильно, потому что в противном случае у меня была бы ошибка в ml_path строке. Точная ошибка:

 FileNotFoundError: [Errno 2] No such file or directory: '/content/gdrive/MyDrive/The_Folder/Subfolder_A/mytext.txt'
 

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

Ответ №1:

Вы смонтировали дисковод ? Прежде чем вызывать его, вы должны смонтировать диск:

 from google.colab import drive
drive.mount('/content/gdrive', force_remount=True)
 

Комментарии:

1. Да, именно так я и написал в начале блокнота. Я проверил, и он действительно находит /content/gdrive/MyDrive/The_Folder/Subfolder_A/ . Он просто не находит файл.

2. может быть, ваш файл был загружен неправильно? видите ли вы это при навигации по меню слева?

3. В разделе Файлы написано: Подключение к среде выполнения для включения просмотра файлов. Но я проверил, !ls /content/gdrive/'MyDrive'/The_Folder/Subfolder_A и он действительно находит только тот текст, который уже был там, а не то, что я загрузил позже.

Ответ №2:

В моем случае это было решено путем установки Ipython на мой коллаб, поэтому в нем будут отображаться новые файлы, добавленные после того, как среда уже запущена.

 !pip install Ipython --upgrade
 

Итак, для новых файлов я запускаю:

 %load_ext autoreload
%autoreload 2