By: Joshua O’Donoghue. Operating System Interface In order to interact with the operating system in python you will want to become familiar with the OS.

Slides:



Advertisements
Similar presentations
Introduction to Java 2 Programming Lecture 10 API Review; Where Next.
Advertisements

Intro to Python Welcome to the Wonderful world of GIS programing!
10/1/2014BCHB Edwards Python Modules and Basic File Parsing BCHB Lecture 10.
Guide To UNIX Using Linux Third Edition
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
Unix Shell Scripts. What are scripts ? Text files in certain format that are run by another program Examples: –Perl –Javascript –Shell scripts (we learn.
Chapter 6: Hostile Code Guide to Computer Network Security.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Console and File I/O - Basics Rudra Dutta CSC Spring 2007, Section 001.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 25 – Perl and CGI (Common Gateway Interface) Outline 25.1 Introduction 25.2 Perl 25.3 String Processing.
CMSC 104, Version 8/061L18Functions1.ppt Functions, Part 1 of 4 Topics Using Predefined Functions Programmer-Defined Functions Using Input Parameters Function.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 35 – Python Outline 35.1 Introduction First Python Program Python Keywords 35.2 Basic.
AIT 616 Fall 2002 PHP. AIT 616 Fall 2002 PHP  Special scripting language used to dynamically generate web documents  Open source – Free!!!  Performs.
Ganga 3 CLIP Tutorial Jakub T. Moscicki ARDA/LHCb Ganga Tutorial, April 2005.
Selecting and Combining Tools F. Duveau 02/03/12 F. Duveau 02/03/12 Chapter 14.
Student Learning Environment on the World Wide Web l CGI-programming in Perl for the connection of databases over the Internet. l Web authoring using Frontpage.
Designing For Testability. Incorporate design features that facilitate testing Include features to: –Support test automation at all levels (unit, integration,
By Zeng Sheng Liu. os - provides dozens of functions for interacting with the operating system >>> import os >>> os.system('time 0:02') 0 >>> os.getcwd()
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Chapter Four UNIX File Processing. 2 Lesson A Extracting Information from Files.
Guide To UNIX Using Linux Fourth Edition
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 6 Value- Returning Functions and Modules.
By Ryan Smith The Standard Library In Python. Python’s “Batteries Included” Philosophy Python’s standard library was designed to be able to handle as.
Python’s Standard Library - Part I Josh Lawrence.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 6 Value-Returning.
TELE 301 Lecture 10: Scheduled … 1 Overview Last Lecture –Post installation This Lecture –Scheduled tasks and log management Next Lecture –DNS –Readings:
Guide to Linux Installation and Administration, 2e1 Chapter 7 The Role of the System Administrator.
School of Computer Science and Information Technology Devi Ahilya Vishwavidyalaya Shell Scripting
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
Agenda Link of the week Use of Virtual Machine Review week one lab assignment This week’s expected outcomes Review next lab assignments Break Out Problems.
Quiz 15 minutes Open note, open book, open computer Finding the answer – working to get it – is what helps you learn I don’t care how you find the answer,
Functions, Procedures, and Abstraction Dr. José M. Reyes Álamo.
Libraries Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Overview Intro to functions What are functions? Why use functions? Defining functions Calling functions Documenting functions Top-down design Variable.
Intermediate CGI & CGI.pm Webmaster II - Fort Collins, CO Copyright © XTR Systems, LLC CGI Programming & The CGI.pm Perl Module Instructor: Joseph DiVerdi,
1 Automated Editing Electronic Reporting (ER) Steve Kocsis, NOAA Fisheries Juneau, Alaska.
Python Documentation Projects Developers Day 8th International Python Conference 27 January 2000.
Python’s Standard Library Part I Joe Houpert CS265.
Higher Computing Science 2016 Prelim Revision. Topics to revise Computational Constructs parameter passing (value and reference, formal and actual) sub-programs/routines,
Productive Laziness with Python Programmability in SPSS Albert-Jan Roskam, PhD. Statistics Netherlands (CBS) ASSESS – York UK - October.
By: Aradhya Malhotra.  To interact with the OS in python you will want to become familiar with the OS module  The command “import os” is used for this.
Python’s Standard Library Part II Dennis Tran. Output Formatting The repr module provides a version of repr() customized for abbreviated displays of large.
Web Services Essentials. What is a web service? web service: software functionality that can be invoked through the internet using common protocols like.
Linux Administration Working with the BASH Shell.
Introduction to Python for System Administrators Toshio Kuratomi May 2011.
CIRC Summer School 2016 Baowei Liu
Lesson 5-Exploring Utilities
Data Virtualization Tutorial: Introduction to SQL Script
CIRC Summer School 2017 Baowei Liu
CIRC Winter Boot Camp 2017 Baowei Liu
Designing For Testability
Python Modules and Basic File Parsing
Python Modules and Basic File Parsing
ClamXav Antivirus Scanner: A Free Tool for Your Mac OS X
Classes, Libraries & Packages
stdin, stdout, stderr Redirection
IBM AS 400 online Training in Hyderabad
LING 408/508: Computational Techniques for Linguists
Functions, Procedures, and Abstraction
Chapter Four UNIX File Processing.
Python’s Standard library part I
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Topics Introduction to Value-returning Functions: Generating Random Numbers Writing Your Own Value-Returning Functions The math Module Storing Functions.
Introduction to Value-Returning Functions: Generating Random Numbers
Python Modules and Basic File Parsing
Functions, Procedures, and Abstraction
 A function is a named sequence of statement(s) that performs a computation. It contains  line of code(s) that are executed sequentially from top.
Slides Courtesy: Prof. Paul Fodor, SBU
Presentation transcript:

By: Joshua O’Donoghue

Operating System Interface In order to interact with the operating system in python you will want to become familiar with the OS module This module can be used with the command “import os” Useful functions to aid in using this module are dir(os) which returns a list of all module functions and help(os) which returns a manual page created from the module’s docstrings

Operating Systems Interface Daily file and directory management tasks can be performed with the shutil module >>> import shutil >>> shutil.copyfile('data.db', 'archive.db') >>> shutil.move('/build/executables', 'installdir')

File Wildcards The glob module is a function used for making lists from directory wildcard searches: >>> import glob >>> glob.glob('*.py') ['primes.py', 'random.py', 'quote.py']

Error Output Redirection and Program Termination The attributes stdin, stdout, and stderr are also part of the “sys” module These are useful for outputting warnings and error messages The most direct way to terminate a script is to use sys.exit() >>> sys.stderr.write('Warning, log file not found starting a new one\n') Warning, log file not found starting a new one

String Pattern Matching The re module provides regular expression tools for string processing. >>> import re >>> re.findall(r'\bf[a-z]*', 'which foot or hand fell fastest') ['foot', 'fell', 'fastest'] >>> re.sub(r'(\b[a-z]+) \1', r'\1', 'cat in the the hat') 'cat in the hat' String methods are easier to read and debug, therefore are preferred when only simple capabilities are needed >>> 'tea for too'.replace('too', 'two') 'tea for two'

Command Line Arguments Common utility scripts often need to process command line arguments which are stored in the “sys” module’s “argv” attribute These attributes are stored as a list >>> import sys >>> print sys.argv ['demo.py', 'one', 'two', 'three']

Mathematics The math module gives access to C library functions for floating point math >>> import math >>> math.cos(math.pi / 4.0) >>> math.log(1024, 2) 10.0

Mathematics Random Numbers can be created using the random module >>> import random >>> random.choice(['apple', 'pear', 'banana']) 'apple' >>> random.sample(xrange(100), 10) # sampling without replacement [30, 83, 16, 4, 8, 81, 41, 50, 18, 33] >>> random.random() # random float >>> random.randrange(6) # random integer chosen from range(6) 4

Internet Access Two of the simplest modules for accessing the internet are urllib2 and smtplib. Urllib2 is used for retrieving data >>> import urllib2 >>> for line in urllib2.urlopen(' if 'EST' in line or 'EDT' in line: # look for Eastern Time... print line Nov. 25, 09:43:32 PM EST

Internet Access Smtplib is used for sending mail >>> import smtplib >>> server = smtplib.SMTP('localhost') >>> """To: From: Beware the Ides of March.... """) >>> server.quit()

Dates and Times The datetime module supplies classes for manipulating dates and times. This module supports objects that are timezone aware >>> # dates are easily constructed and formatted >>> from datetime import date >>> now = date.today() >>> now datetime.date(2003, 12, 2) >>> now.strftime("%m-%d-%y. %d %b %Y is a %A on the %d day of %B.") ' Dec 2003 is a Tuesday on the 02 day of December.' >>> # dates support calendar arithmetic >>> birthday = date(1964, 7, 31) >>> age = now - birthday >>> age.days 14368

Data Compression Common data archiving and compression formats are directly supported by the modules: zlib, gzip, bz2, zipfile, and tarfile >>> import zlib >>> s = 'witch which has which witches wrist watch' >>> len(s) 41 >>> t = zlib.compress(s) >>> len(t) 37 >>> zlib.decompress(t) 'witch which has which witches wrist watch' >>> zlib.crc32(s)

Performance Measurement Many users wish to know the performance of different approaches to the same problem The timeit module quickly can demonstrate performance advantages >>> from timeit import Timer >>> Timer('t=a; a=b; b=t', 'a=1; b=2').timeit() >>> Timer('a,b = b,a', 'a=1; b=2').timeit()

Quality Control In order to develop high quality software, you should write tests for each function and run them frequently during the developmental process The module that provides a tool for scanning and validating tests embedded in the docstrings is “doctest” def average(values): """Computes the arithmetic mean of a list of numbers. >>> print average([20, 30, 70]) 40.0 ""“ return sum(values, 0.0) / len(values) import doctest doctest.testmod() # automatically validate the embedded tests

Quality Control The unitest module is not as effortless as the doctest module, but it does allow for a more comprehensive set of tests to be maintained in a separate file: import unittest class TestStatisticalFunctions(unittest.TestCase): def test_average(self): self.assertEqual(average([20, 30, 70]), 40.0) self.assertEqual(round(average([1, 5, 7]), 1), 4.3) self.assertRaises(ZeroDivisionError, average, []) self.assertRaises(TypeError, average, 20, 30, 70) unittest.main() # Calling from the command line invokes all tests

Batteries Included The xmlrpclib and simpleXMLRPCServer modules make implementing remote procedure calls into an almost trivial task, and works needing no knowledge or handling of XML despite their names The package is a library for managing messages and contains a complete toolset for building or decoding complex message structures.

Batteries Included The xml.dom and xml.sax packages provide support for parsing popular data interchange format. The csv module supports direct reads and writes in a common database format. These modules are extremely useful in simpifying data interchange between python applications and other tools.

Source Used