Нужно ли мне передавать полный путь к файлу в другом каталоге, чтобы открыть ()?

У меня есть папка с десятью файлами, которые я хочу просмотреть. Когда я распечатываю имя файла, мой код работает нормально:

import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
    for f in filenames:
        print(f)

Что печатает:

1
2
3
4
5
6
7
8
9
10

Но если я пытаюсь открыть файл в цикле, я получаю ошибку ввода-вывода:

import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
    for f in filenames:
        log = open(f, 'r')

Traceback (most recent call last):
File "/home/des/my_python_progs/loop_over_dir.py", line 6, in <module>
log = open(f, 'r')
IOError: [Errno 2] No such file or directory: '1'
>>> 

Нужно ли мне передавать им полный путь к файлу даже внутри цикла open()?

62
задан smci 12 September 2018 в 07:35
поделиться