Выполнение всех файлов внутри папки в Python

1

У меня есть 20 файлов Python, которые хранятся внутри каталога в ubuntu 14.04, например, 1.py, 2.py, 3.py, 4.py

Я выполняю эти файлы "python 1.py", "python 2.py" в ближайшее время в 20 раз.

это их способ выполнить все файлы python внутри папки по одной команде?

Теги:
python-2.7

4 ответа

2
Лучший ответ
find . -maxdepth 1 -name "*.py" -exec  python3 {} \;
  • 1
    В конечном итоге это будет повторяться в подкаталогах, что может не соответствовать желанию ОП.
  • 0
    Добавлена maxdepth 1
Показать ещё 2 комментария
1
for F in $(/bin/ls *.py); do ./$F; done

Вы можете использовать любую конструкцию bash непосредственно из командной строки, например, для цикла. Я также принудительно /bin/ls, чтобы обойти любые псевдонимы, которые вы, возможно, установили.

0

Вы можете попробовать с помощью glob библиотеки.

Сначала установите glob lybrary.

Затем импортируйте его:

import glob

Затем используйте цикл for для итерации по всем файлам:

for fileName in glob.glob('*.py'):
    #do something, for example var1 = filename

* Используется для их открытия.

Дополнительная информация здесь: https://docs.python.org/2/library/glob.html

  • 1
    Это не единственная команда
0

Используйте петлю внутри папки:

#!/bin/bash
for script in $(ls); do
    python $script
done

Ещё вопросы

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