Python advanced 3.the python std lib by example – system related modules
Upcoming SlideShare
Loading in...5

Python advanced 3.the python std lib by example – system related modules






Total Views
Views on SlideShare
Embed Views



1 Embed 1 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Python advanced 3.the python std lib by example – system related modules Python advanced 3.the python std lib by example – system related modules Presentation Transcript

    • Brief introduction • The time module includes clock time and the processor run-time • The datetime module provide a higher-level interface for date, time and combined values. It support arithmetic,comparison, and time zone configuration. • The calendar module includeweeks,months, and years.
    • Function time – clock time • Function time return the number of seconds since the start of epoch • Function ctime show human-readable format.
    • Function clock – processor clock time • Use it for perfomance testing, beachmarking. • function time.clock() >>>import time >>>for i in range(6,1,-1): print '%s %0.2f %0.2f' % (time.ctime(),time.time(),time.clock()) print 'sleeping', i time.sleep(i)
    • Datetime module: doing time and date parsing • Class datetime.time: has attribute hour,minute,second and microsecond and tzinfo(time zone information)
    • • Class have attribute year, month and day. • It is easy to create current date using function today() method.
    • Brief introduction • Standard library includes a large range of tools working with files. • The os module provides a way regardless the operation systems. • The glob module help scan the directory contents
    • Work with file • open:create, open, and modify files • remove: delete files Code Example: import os fi = open(file) fo = open(temp,”w”) #w mean write permisson for s in fi.readlines(): fo.write(s) fi.close fo.close os.remove(back)
    • Work with directory • listdir,chdir,mkdir,rmdir,getcwd: Please guess the function by the name import os os.getpwd() # get the current dir os.chdir(‘..’) # change to the parent directory os.getcwd() os.listdir(‘.’) #list the file under the dir os.mkdir(‘./temp1’) #make new dir os.rmdir(‘./temp1’) #delete the dir os.listdir(‘.’) # check if the delete is successful
    • Work with directory - cont • removedirs,makedirs: remove and create directory hierarchies. Instead, rmdir and mkdir only handle single directory level.
    • Work with file attributes • stat: It returns a 9-tuple which contains the size, inode change timestamp, modification timestamp, and access privileges of a file. Similar as unix stat. import os file = "samples/sample.jpg“ st = os.stat(file) size = st[6] #file size
    • Working with processes • system:runs a new command under the current process, and waits for it to finish import os os.system('dir') os.system('notepad') # open notepad
    • The os.path class • This module contains functions that deal with long filenames (path names) in various ways. • Learn from example import os filename = "my/little/pony" print "using",, "..." print "split", "=>", os.path.split(filename) print "splitext", "=>", os.path.splitext(filename) print "dirname", "=>", os.path.dirname(filename) print "basename", "=>", os.path.basename(filename) print "join", "=>", os.path.join(os.path.dirname(filename), os.path.basename(filename))
    • Using the os.path module to check what a filename represents • Learn from example for file in FILES: print file, "=>", if os.path.exists(file): print "EXISTS", if os.path.isabs(file): print "ISABS", if os.path.isdir(file): print "ISDIR", if os.path.isfile(file): print "ISFILE", if os.path.islink(file): print "ISLINK", if os.path.ismount(file): print "ISMOUNT", print
    • os.environ • A mapping object representing the string environment. => key value pairs a = os.environ dir(a) # show all the functions of a a.keys() #show all the keys a.has_key('USERNAME') #check if has this key print a['USERNAME‘] # return the value of this key
    • The glob module: search dir • An asterisk(*) mathes 0 or more characters in a segment of a name >>> import glob >>> for name in glob.glob(‘dir/*’) print name
    • More wildcards in glob • A question mark (?) matches any single character >>> for name in glob.glob(‘./file?.txt’): print name ./file1.txt ./file2.txt • Others: character range e.g. [a-z], [0-9]
    • The tempfile module: Temporary file system object • Application need temporary file to store data. • This module create temporary files with unique names securely. • The file is removed automatically when it is closed.
    • Use TemporaryFile create temp file >>> import tempfile
    • Another example • Write something into temp file. • Use seek() back to the beginning of file. Then read it
    • More methods in tempfile • Method NamedTemporaryFile() – Similar as TemporaryFile but it give a named temporrary file. – Leave it to user fig out (Follow the example of TemporaryFile). • Method mkdtemp(): create temp dir • Method gettempdir(): return the default dir store temp file
    • Module shutil – high level file operation • Method copyfile(source,destination): copy source file to destination) • Method copy(source file, dir): copy the file under the dir
    • More functions in shutil • Method copytree(dir1, dir2): copy a dir1 to dir2 • Method rmtree(dir): remove a dir and its contents. • Method move(source,destination): move a file or dir from one place to another.
    • Module filecmp: compare files and dir • Function filecmp.cmp(file1,file2): return True or False • Function filecmp.dircmp(dir1,dir2).report(): output a plain-text report
    • Brief introduction • This module provides access to some variables used or maintained by the interpreter and to functions that interact strongly with the interpreter.
    • Working with command-line arguments • argv list contain the arguments passed to the script. The first is the script itself (sys.argv[0]) # import sys print "script name is", sys.argv[0] for arg in sys.argv[1:]: print arg • Save the code to file, run command line “python –c option1 –d option2”
    • Working with modules • path: The path list contains a list of directory names where Python looks for extension modules import sys sys.path
    • sys.platform • The platform variable contains the name of the host platform import sys sys.platform • Typical platform names are win32 for Windows
    • Working with standard input and output • The stdin, stdout and stderr variables contain stream objects corresponding to the standard I/O streams. #File “” saveout = sys.stdout f = open(‘file1.txt’,’w’) Sys.stdout = f #change the stdout to file1.txt print “hello,world” sys.stdout = saveout In this example, “hello,world” string has written to file1.txt.
    • sys.exit:Exiting the program • This function takes an optional integer value, which is returned to the calling program. import sys print "hello" sys.exit(1) print "there"