#python #file
#python #файл
Вопрос:
Я очень новичок в python и буду использовать его для анализа данных для астрономических исследований. Чтобы попробовать свой первый код, я хотел просто прочитать и распечатать таблицу данных (текстовый файл), которая у меня уже была в моем каталоге. Я продолжаю получать сообщение «Такого файла или каталога нет», даже когда я указываю прямой путь к файлу.
openfile= open("//d//acadia//smartens//members","r ")
print (members.txt)
Кроме того, когда я пытаюсь использовать путь к файлу в команде печати, он возвращает синтаксическую ошибку
openfile= open("//d//acadia//smartens//members","r ")
print (//d//acadia//smartens//members)
Я использую Linux, Emacs и SDSS amp; GALEX data.
Я хотел бы получить несколько предложений и примеров простых кодов, подобных этому, вместе с объяснениями того, почему я получаю эти сообщения об ошибках. Также, когда мне нужно указать, что это текстовый файл? Большое вам спасибо.
Комментарии:
1. Я настоятельно рекомендую начать с руководства по Python , особенно с раздела «Чтение и запись файлов» , когда вы до него доберетесь.
Ответ №1:
Вы можете попробовать следующий код и посмотреть, работает ли он лучше:
import sys
with open('/d/acadia/smartens/members') as file:
for line in file:
sys.stdout.write(line)
Кроме того, если возвращается следующая строка False
, значит, ваш путь неверен:
os.path.exists('/d/acadia/smartens/members')
Комментарии:
1. Это сработало, спасибо! Можете ли вы объяснить, почему это правильный способ сделать это? Почему потребовался ‘import sys’? Что означает «стандартный вывод»? И почему вместо команды печати использовалась ‘write (line)’?
2. Разница между
write
иwrite
не добавляет новую строку, что здесь удобно.3. Нет необходимости делать это таким образом; альтернативы, которые @noctis демонстрирует вам, имеют некоторые преимущества, но на самом деле это дело вкуса. Внимательно посмотрите, как были записаны пути к файлам, и прочитайте руководство по python , чтобы получить ответы на все ваши последующие вопросы.