Модифікуйте додаток, розроблений на уроці: користувач
вводить необхідні шляхи і в результаті отримує інформацію
про всі файли та директорії в них.
import os
def filepath(path):
path =os.path.normpath(path)
result = {\'dirs\':[],\'files\':[]}
for path,dirnames,filenames in os.walk(path):
for dir in dirnames:
result[\'dirs\'].append(dir)
for files in filenames:
result[\'files\'].append(files)
with open (\'new2.txt\' , \'w\') as file:
file.write(\"\ {:^50} \ \".format(\'DIRECTORIES\'))
for dir in result[\'dirs\']:
file.write(f\"\ \\t\\t {dir}\")
file.write(\"\ {:^50} \ \".format(\'FILES\'))
for files in result[\'files\']:
file.write(f\"\ \\t\\t {files}\")
path=\'C:/Users/master/PycharmProjects/pythonProject\'
filepath(path=path)
ось додаток
СРОЧНО!!!
Ответ
0 (0 оценок)
1
43r 5 месяцев назад
Светило науки - 34 ответа - 0 раз оказано помощи

Звучить, ніби ви хочете, щоб користувач вводив шлях до папки, замість того, щоб це був жорстко заданий шлях, як у вашому прикладі. Ось оновлений код, який дозволяє користувачеві вводити шлях до папки:

def filepath(path):

   path = os.path.normpath(path)

   result = {'dirs': [], 'files': []}

   for path, dirnames, filenames in os.walk(path):

       for dir in dirnames:

           result['dirs'].append(dir)

       for files in filenames:

           result['files'].append(files)

   with open('new2.txt', 'w') as file:

       file.write("n {:^50} n".format('DIRECTORIES'))

       for dir in result['dirs']:

           file.write(f"ntt {dir}")

       file.write("n {:^50} n".format('FILES'))

       for files in result['files']:

           file.write(f"ntt {files}")

path = input("Введіть шлях до папки: ")

filepath(path=path)

Цей оновлений код використовує функцію input, яка дозволяє користувачеві ввести шлях до папки, замість того, щоб було жорстко задано один певний шлях. Після введення шляху програма виконає пошук у цій папці та створить файл з інформацією про файли та директорії.