πŸ“‚ Как ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠŸΠΈΡ‚ΠΎΠ½Π°: простой способ

Как ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² Python?

Для считывания всСх Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ os:

import os

Π—Π°Ρ‚Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ os.listdir() для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅:

folder_path = 'ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅'
file_list = os.listdir(folder_path)

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ file_list Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ список всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ glob для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ² с использованиСм шаблонов:

import glob

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования:

folder_path = 'ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅'
file_list = glob.glob(folder_path + '/*.txt')

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ всС Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .txt ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ os ΠΈΠ»ΠΈ glob.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅?

Часто Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ. Π’ ΠŸΠΈΡ‚ΠΎΠ½Π΅ сущСствуСт нСсколько способов Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ этой Ρ†Π΅Π»ΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π°.

1. ΠœΠΎΠ΄ΡƒΠ»ΡŒ os

ΠœΠΎΠ΄ΡƒΠ»ΡŒ os прСдоставляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ манипуляции с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ os.listdir() для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅.

        
import os

folder_path = "ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅"
file_list = os.listdir(folder_path)

for file_name in file_list:
    print(file_name)
        
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ folder_path ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ os.listdir() для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ². Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ проходимся ΠΏΠΎ списку Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΡ… ΠΈΠΌΠ΅Π½Π°.

2. ΠœΠΎΠ΄ΡƒΠ»ΡŒ glob

ΠœΠΎΠ΄ΡƒΠ»ΡŒ glob прСдоставляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для поиска Ρ„Π°ΠΉΠ»ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ glob.glob() для поиска всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅.

        
import glob

folder_path = "ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅"
file_list = glob.glob(folder_path + "/*")

for file_name in file_list:
    print(file_name)
        
    

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ folder_path ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ glob.glob() с шаблоном folder_path + "/*" для поиска всСх Ρ„Π°ΠΉΠ»ΠΎΠ² Π² этой ΠΏΠ°ΠΏΠΊΠ΅. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠΌΠ΅Π½Π° Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

3. ΠœΠΎΠ΄ΡƒΠ»ΡŒ Path ΠΈΠ· pathlib

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Path ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ pathlib прСдоставляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ интСрфСйс для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с путями Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ iterdir() для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅.

        
from pathlib import Path

folder_path = Path("ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅")
file_list = [file.name for file in folder_path.iterdir() if file.is_file()]

for file_name in file_list:
    print(file_name)
        
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ класса Path ΠΈΠ· модуля pathlib. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ iterdir() для получСния списка Ρ„Π°ΠΉΠ»ΠΎΠ² Π² этой ΠΏΠ°ΠΏΠΊΠ΅, ΠΈ провСряСм, являСтся Π»ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° is_file(). НаконСц, ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠΌΠ΅Π½Π° Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

4. РСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄ ΠΏΠ°ΠΏΠΎΠΊ

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ рСкурсивно ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΎΠΊ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ»ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ рСкурсивной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

        
import os

def read_files_recursively(folder_path):
    for root, dirs, files in os.walk(folder_path):
        for file_name in files:
            file_path = os.path.join(root, file_name)
            print(file_path)

folder_path = "ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅"
read_files_recursively(folder_path)
        
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ опрСдСляСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ read_files_recursively(), которая ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ os.walk() для рСкурсивного ΠΎΠ±Ρ…ΠΎΠ΄Π° ΠΏΠ°ΠΏΠΎΠΊ, получая ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ, список ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΎΠΊ ΠΈ список Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ составляСм ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ os.path.join() ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ нСсколько способов ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ подходящий Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π² зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… потрСбностСй. Π£Π΄Π°Ρ‡ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π² Python. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ запись Π΄Π°Π½Π½Ρ‹Ρ…

Как Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Π•Π“Π­ ΠΏΠΎ Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ 2022.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΏΠ°ΠΏΠΊΠ΅ - Python / mrGURU

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸš€ Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство

πŸ” Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ являСтся Π»ΠΈ число ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ Ρ‚Ρ€ΠΎΠΉΠΊΠΈ Π² Python? 🐍

πŸ” Как Π½Π°ΠΉΡ‚ΠΈ сумму ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простой ΠΏΡƒΡ‚ΡŒ ΠΊ успСху

πŸ“‚ Как ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠŸΠΈΡ‚ΠΎΠ½Π°: простой способ

πŸ”§ Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ GitHub для Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Как ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π°ΠΉΡ‚Ρ‹ Π² ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python? πŸ“·

Как ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ graph python: Π»Π΅Π³ΠΊΠΈΠΉ способ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ graph python