Löytää kaikki tiedostot hakemistoon

Kuinka voimme löytää tiedosto pois tietokoneen kanssa Python? On paljon tapoja tehdä se, aloitetaan ensimmäisestä.

os: n avulla.listdir()

Sinun täytyy vain tuoda os moduuli ja voit käyttää käyttöjärjestelmän.listdir-toiminto, joka voi nähdä kaikki tiedostot hakemistossa. Python 3, jos et laita mitään, koska argumentti kierros suluissa, se palauttaa luettelon kaikki tiedostot ja kansio nykyisen hakemiston., Pyton 2: ssa sinun on käytettävä käyttöjärjestelmää.listdir (s.”) nähdä tiedostot nykyisessä hakemistossa.

# First tryimport osf_list = os.listdir()

Jos haluat tietyn hakemiston, polku on asetettava argumentiksi.

os.listdir("C:\\documents")

tässä esimerkissä, voit tarkastella tiedostoja kansioon, asiakirjat kiintolevyn C:

– käyttöjärjestelmä.listdir(): saada tiedostoja nykyinen dir (Python 3)

yksinkertaisin tapa on tiedosto nykyinen dir Python 3 on tämä., Se on todella yksinkertaista, käytä käyttöjärjestelmä-moduulin ja listdir () – toiminto ja sinulla on tiedosto, joka dir (ja mahdollisesti kansioita, jotka ovat dir, mutta sinulla ei ole tiedoston alihakemistoon, että voit käyttää walk – aion puhua siitä myöhemmin).

import osarr = os.listdir()arr

Getting täydellinen polku

Kuten olet huomannut, et on koko polun tiedoston koodi edellä. Jos tarvitset absoluuttisen polun, voit käyttää toista käyttöjärjestelmän funktiota.polku moduuli nimeltään _getfullpathname, laittaa tiedoston, että saat os.listdir () argumenttina., On muitakin tapoja on koko polku, kuten tulemme myöhemmin (vaihdoin, ehdottivat mexmex, _getfullpathname kanssa abspath).

Hae koko polku tyyppi, tiedoston kaikki alihakemistot kanssa kävellä

– mielestäni tämä on erittäin hyödyllistä löytää tavaraa, monet hakemistoja ja se auttoi minua löytämään tiedosto, josta en muista nimeä:

import osthisdir = os.getcwd()for r, d, f in os.walk(thisdir): for file in f: if ".docx" in file: print(os.path.join(r, file))

– käyttöjärjestelmä.listdir(): saada tiedostoja nykyinen dir (Python 2)

import osarr = os.listdir('.')arr# output: 

mennä ylös hakemisto-puu

# method 1x = os.listdir('..')# method 2x = os.listdir('/')

hae tiedostoja: – käyttöjärjestelmä.,listdir() hakemistoon (Python 2 ja 3)

import osarr = os.listdir('F:\\python')arr# output: 

Hae tiedostoja tiettyyn alihakemistoon os.listdir()

import osx = os.listdir("./content")

– käyttöjärjestelmä.kävelymatka(‘.’) – hakemistossa.

import osarr = next(os.walk('.'))arr# output: 

loraus moduuli – kaikki tiedostot

import globprint(glob.glob("*"))# output: 

seuraava(os.kävelymatka(‘.’) ja os.polku.join (”dir”, ”file”)

next (os.kävelymatkan(’F:\’) – hae koko polku – lista ymmärtämistä

# output# 

– käyttöjärjestelmä.walk-get full path-all files in sub dirs

x = x# output# 

os.,listdir() – saat vain txt-tiedostot

arr_txt = print(arr_txt)# output: 

glob – saada vain txt-tiedostot

import globx = glob.glob("*.txt")x# output: 

Käyttämällä loraus saada koko polku tiedostot

Jos minulla olisi tarve absoluuttinen polku tiedostot:

Muu käyttö loraus

Jos haluan kaikki tiedostot hakemistoon:

x = glob.glob("*")

Käyttäen os.polku.isfile välttää hakemistojen luetteloon*

Käyttämällä pathlib alkaen (Python 3.4)

Jos haluat käyttää luettelon ymmärtämistä

flist = 

Saada kaikki ja vain tiedostot, os.,kävellä

Saat vain tiedostot, joiden vieressä ja kävelymatkan hakemistoon

import osx = next(os.walk('F://python'))print(x)################################### output: 

Saat vain hakemistojen vieressä ja kävelymatkan hakemistoon

import osnext(os.walk('F://python')) # for the current dir use ('.')# output: 

**kaikki subdir nimet kävellä

– käyttöjärjestelmä.scandir() python 3.5

Ex. 1: Kuinka monta tiedostoa on alihakemistoissa?

tässä esimerkissä etsitään kaikkien hakemiston ja sen alihakemistojen sisältämien tiedostojen määrää.

Ex.2:Miten kopioida kaikki tiedostot dir toiseen?,

script tehdä, jotta tietokoneen löytää kaikki tiedostot tyypin (oletus: pptx) ja kopioimalla ne uuteen kansioon.

Ex.3: Miten saada kaikki tiedostot txt-tiedosto

jos haluat luoda txt-tiedosto, jossa kaikki tiedostonimet:

Esimerkki: luoda txt-kaikki tiedostojen nimet kiintolevylle

Kaikki tiedot C:\\ yhdessä teksti-tiedosto

Tämä on lyhyempi versio edellisestä koodi. Muuta kansiota, jossa alkaa löytää tiedostoja, jos sinun täytyy aloittaa toisesta paikasta., Tämä koodi luo 50 mb tekstitiedosto tietokoneellani jotain vähemmän kuin 500.000 riviä tiedostoja koko polku.

import oswith open("file.txt", "w", encoding="utf-8") as filewrite: for r, d, f in os.walk("C:\\"): for file in f: filewrite.write(f"{r + file}\n")

etsii tiedostotyyppiä kaikista käyttöjärjestelmällä varustetuista kiintolevyistä.kävele

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *