1

Есть структура: A -testfile.py B -textfile.txt

В файле testfile.py нужно считать все данные textfile.txt

Пробовал указать через относительный путь, но не получилось my_file = open("../b/textfile.txt", "r")

sercxjo
  • 6,904
  • 2
  • 27
  • 57

3 Answers3

1

Если вам нужно открыть файл относительно запускаемого скрипта, путь к нему можно взять из встроенной переменной __file__:

import os
print os.path.join(os.path.dirname(__file__),'..','b','textfile.txt')
sercxjo
  • 6,904
  • 2
  • 27
  • 57
0
import os
a = 'dir/dd\er//wq\\qwe'
n = os.path.join(os.getcwd(), os.path.normpath(a))
print(n)

with open(os.path.join(n, 'f1'), 'r') as fr, open(os.path.join(n, 'f2'), 'w') as fw:
    fw.write(fr.read())

out:

C:\Scripts\python\2016\4\dir\dd\er\wq\qwe
vadim vaduxa
  • 8,897
0

Проверь os.chdir, возможно путь строится изначально не от того пути, который ты подразумеваешь. ну и попробуй построить относительный путь через os.path.join

cauf
  • 2,514