Uvod u jezik PYTHON

(priručnik za  predmet "Skript jezici")


© Matematički fakultet

Miljana Mladenović, Duško Vitas

O Python-u
Instalacija
Sintaksa jezika Python
Osnovne osobine
Službene reči
Operatori i njihovi prioriteti
Osnovne algoritamske strukture
Blok naredbi
if struktura
while struktura
Iskazi: break, continue, pass
Tipovi podataka u Python-u
Osnovni i ugradjeni tipovi
Brojevi
Konverzija formata
Neke matematičke funkcije
Neke random funkcije
Niske
Neke funkcije nad niskama
Formatiranje niski
Liste
Torke
Osnovni izrazi sa torkama
Rečnici
Skupovi
Operacije nad skupovima
Datoteke
Funkcije modula os za rad sa datotekama
Funkcije modula os za rad sa folderima
Izuzeci
Funkcije
Moduli
Paketi
Klase
Regularni izrazi
Baze podataka
Primeri u Netbeans-u

Funkcije modula OS za rad sa folderima

 

 

os.curdir              #vraća tekući folder kao nisku

os.pardir             #vraća roditeljski folder kao nisku

 

os.sep                   #vraća fajl separator kao nisku

 

os.extsep             #vraća separator ekstenzije kao nisku

os.environ                          #vraća listu vrednosti osnovnih podešavanja

 

os.path.isdir(<folder>)                 #vraća logičku vrednost da li <folder> postoji

 

os.chdir(<folder>)           #menja aktivni folder na <folder>

 

os.getcwd()                        #vraća URI aktivnog foldera

 

os.mkdir(<folder>)         #kreiranje foldera kao podfoldera tekućeg ili po zadatom URI

 

os.rmdir(<folder>)          #uklanjanje praznog foldera

 

os.listdir(<folder>)         #listanje sadržaja foldera

 

os.path.join(<putanja>,<nazivDatoteke>)          #formiranje URI-a datoteke

 

os.path.split(<URIdatoteke>)                                    #podela na putanju i naziv datoteke

 

os.path.splitext(<nazivDatoteke>)                         #podela na ime i ekstenziju

 

os.walk(top, topdown, onerror, followlinks)    #vraća stablo podfoldera u odnosu na zadati

folder top

>>> import os

>>> tempdir=r"E:\Python26\primeri\Primer16"

>>> print "provera da li folder postoji"

>>> print os.path.isdir(tempdir)

True

>>> print tempdir

E:\Python26\primeri\Primer16

>>> if os.path.isdir(tempdir) == True:

...     os.chdir(tempdir) #promena aktivnog foldera

...     cwd = os.getcwd() #vraca naziv aktivnog foldera

...     print "cwd=",cwd

...     if os.path.isdir(tempdir+"\pera") == True:

...         os.rmdir('pera') #ako vec postoji, brise se, ako je prazan!!! ako \ ...                           nije prazan izbacuje #WindowsError izuzetak

...     os.mkdir('pera')  #kreiranje foldera pera

...     os.chdir('pera')  #promena akt.foldera na pera

...     cwd = os.getcwd()

...     print cwd         #ispis naziva aktivnog foldera

...     print os.listdir(cwd)  #listanje sadrzaja aktivnog foldera

...     datoteka = open('test', 'w')  #otvaranje datoteke za upis

...     datoteka.write('pera peric\n') #upis u datoteku

...     datoteka.write('mika mikic\n')

...     datoteka.close()               #zatvaranje datoteke

...     print os.listdir(cwd)      ##listanje sadrzaja aktivnog foldera

     

 ...    os.rename('test', 'imenik.txt') #promena imena datoteke

 ...    print os.listdir(cwd)

 ...    path = os.path.join(cwd, os.listdir (cwd)[0]) #konkatenacija apsplut.

 ...    #puta i prvog clana  liste cwd sto je prvoizlistana datoteka imenik.txt

 ...    print "path posle join-a ", path

 ...    print "split path-a ", os.path.split(path) # podela aps. URI na put i

 ...                                                 # naziv datoteke

 ...    print "os.path.basename(path)", os.path.basename(path) #naziv datoteke

 ...    print "splittext path-a ", os.path.splitext(os.path.basename(path))  

 ...    #naziv datoteke podeljen na ime i ekstenziju 'imenik' i '.txt'

 ...    datoteka = open(path)

 ...    for linija in datoteka:

 ...        print linija,

 ...    datoteka.close()

 ...    os.remove(path)  #brisanje datoteke imenik.txt

 ...    print os.listdir(cwd)  #listanje foldera koji je već prazan

 ...    os.chdir(os.pardir)  #povratak u roditeljski folder

     

# umesto rmdir koji ocekuje da je folder prazan da bi ga mogao obrisati

# Brise sve sto se nalazi na folderu sa imenom "top",

##os.walk(top, topdown, onerror, followlinks)

# Napomena!!!:  Ako je top == '/', obrisace se svi fajlovi sa diska

>>>import os

>>>top=tempdir+"\pera"

>>>print "top=",top

>>>for root, dirs, files in os.walk(top, topdown=False):

...      for name in files:

...              os.remove(os.path.join(root, name))

...      for name in dirs:

...              os.rmdir(os.path.join(root, name))

     

E:\Python26\primeri\Primer16

cwd= E:\Python26\primeri\Primer16

E:\Python26\primeri\Primer16\pera

[]

['test']

['imenik.txt']

path posle join-a  E:\Python26\primeri\Primer16\pera\imenik.txt

split path-a  ('E:\\Python26\\primeri\\Primer16\\pera', 'imenik.txt')

os.path.basename(path) imenik.txt

splittext path-a  ('imenik', '.txt')

pera peric

mika mikic

[]

 

Beograd, novembar 2010.