2015-10-13 2 views
0

Я знаю, что этот вопрос может быть глупым, и я в порядке с этим, так как я на уровне новичков. Я хотел бы знать, есть ли способ открыть файл в python, введя только его имя, например open(mbox.txt) вместо open(C:\Python27\mbox.txt) ??Как открыть файл с python только с именем?

Благодаря

ответ

1

I would like to know whether there is a way to open a file in python by entering only its name

Вы можете открыть файл без предоставления path, пока файл находится на том жеdir как сценарий Python.

+0

Это не совсем верно. Файл должен находиться в текущем рабочем каталоге, который может быть или не быть местом сценария, в зависимости от того, как вы его запускаете. Вы можете найти текущий рабочий каталог, вызвав 'os.getcwd', ​​и вы можете изменить его, вызвав' os.chdir'. – Blckknght

+0

Вы правы, но нам нужно адаптировать ответ к OP, в этом случае, я думаю, мой ответ ясен. –

+0

Когда я ввожу import os, а затем os.getcwd, он показывает <встроенную функцию getcwd>, но ничего не говорит мне о директории, является ли это правильным способом вызова os.getcwd ?? –

1

Python ищет файл, который вы упоминаете, без их полного пути, в следующих каталогах, перечисленных в sys.path

import sys 
for path in sys.path: 
    print path 

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

Коррекция

выше предложение не дает ответа на вопрос, как и Джон сказал, что это влияет только на импорт машин. Чтобы ответить на ваш вопрос, измените каталог, используя os-модуль python.

import os 
os.chdir('to_the_respective_directory') 
open('file.txt') 
+1

Это относится к механизму импорта в Python - не к тому, как работает встроенный 'open'. –

+1

@JonClements Я сделал необходимую коррекцию – saikumarm

Смежные вопросы