Как открыть файл, используя строки другого файла в Python?

1

У меня 1000 файлов, а их имена - "числа", например, 2323.csv. У меня есть это имя в файле с именем 1.txt. Теперь я хочу открыть эти файлы один за другим в python, используя 1.txt, чтобы открыть их.

Как я могу это сделать?

  • 0
    Пример файла 1.txt: 2323 \ n 2425 \ n 2748. Таким образом, в нем есть один столбец, состоящий из имен файлов (без .csv, но в конце их очень легко добавить в конец в случае необходимости) .csv
Теги:

2 ответа

4
Лучший ответ

Почему не это?

with open('1.txt', 'r') as listFile:
    for line in listFile:
        with open(line.rstrip(), 'r') as individualFile:
            # do stuff
  • 2
    Я бы добавил with open(line.rstrip(), 'r') as individualFile: если каждое имя файла находится в строке
  • 0
    откуда мы знаем, что файл имеет имена в одном столбце ???
Показать ещё 4 комментария
1

Грубо и очень простой, но понятный код (без обработки ошибок).

with open('1.txt', 'r') as f:
  for line in f.readlines():  # This assumes each line has a number
     with open('.'.join([line, 'csv']) as cf:
         file_content = cf.readlines()
         print(file_content)
  • 3
    Вам не нужно читать файл в список с помощью f.readlines , вы можете зацикливаться непосредственно над f . Но в любом случае вам нужно избавиться от \n в конце каждой строки.
  • 0
    @ PM2Ring да, ты прав. Хороший улов, это слишком долго, я не использую Python таким образом.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню