scripting in Python
OUTLINE
• Why Use Python?
• Running Python
• Types and Operators
• Basic Statements
• Functions
• Some programs
• Industry applications
WHY PYTHON?
 Python is a general-purpose, interpreted high-level programming
language
 It's free (open source)
Downloading and installing Python is free and easy
Source code is easily accessible
Free doesn't mean unsupported! Online Python community is huge
 It's portable
Python runs virtually every major platform used today
It just need you to have a compatible Python interpreter installed
 It's powerful
Dynamic typing
Built-in types and tools
Library utilities
Automatic memory management
Running Python
 $ python
 print 'Hello world'
 Hello world
# Relevant output is displayed on subsequent lines without the
>>> symbol
 >>> x = [0,1,2]
# Quantities stored in memory are not displayed by default
 >>> x
# If a quantity is stored in memory, typing its name will display it
 [0,1,2]
 >>> 2+3
 5
 >>> # Type ctrl-D to exit the interpreter
 $
 Suppose the file script.py contains the following
lines:
 print 'Hello world'
 x = [0,1,2]
To execute the script
 $ python -i script.py
 Hello world
 >>> x
 [0,1,2]
 >>>
 # “Hello world” is printed, x is stored and can be called later, and the
interpreter is left open
 >>> import script
 Hello world
 >>> script.x
 [1,2,3]
Types and operators: operations on
numbers
 Basic algebraic operations
Four arithmetic operations: a+b, a-b, a*b, a/b
Exponentiation: a**b
 Comparison operators
Greater than, less than, etc.: a < b, a > b ,a <= b, a>= b
Identity tests: a == b, a != b
 Bitwise operators
Bitwise or: a | b
Bitwise exclusive or: a ^ b # Don't confuse this with
exponentiation
Bitwise and: a & b
Shift a left or right by b bits: a << b, a >> b
Types and operators: strings and
operations
 Strings are ordered blocks of text
Strings are enclosed in single or double quotation marks
Examples: 'abc', “ABC”
 Concatenation and repetition
Strings are concatenated with the + sign:
>>> 'abc'+'def'
'abcdef'
Strings are repeated with the * sign:
>>> 'abc'*3
'abcabcabc'
 Indexing and slicing, contd.
s[i:j:k] extracts every kth element starting with index i
(inclusive) and ending with index j (not inclusive)
>>> s[0:5:2]
'srn'
Python also supports negative indexes. For example, s[-1]
means extract the first element of s from the end.
>>> s[-1]
'g‘
>>> s[-2]
'n‘
>>> s.upper()
STRING
 Indexing and slicing
Python starts indexing at 0. A string s will have indexes running
from 0 to len(s)-1 (where len(s) is the length of s) in
integer quantities.
s[i] fetches the i th element in s
>>> s = ‘string'
>>> s[1] # note that Python considers 't' the first element
't' # of our string s
s[i:j] fetches elements i (inclusive) through j (not inclusive)
>>> s[1:4]
'tri'
s[:j] fetches all elements up to, but not including j
>>> s[:3]
'str'
s[i:] fetches all elements from i onward (inclusive)
>>> s[2:]
'ring'
Types and operators: Lists
 Basic properties:
Lists are contained in square brackets []
Lists can contain numbers, strings, nested sublists, or nothing
Examples: L1 = [0,1,2,3], L2 = ['zero', 'one'],
L3 = [0,1,[2,3],'three',['four,one']], L4 = []
List indexing and slicing works just like string indexing
 Some basic operations on lists:
Indexing: L1[i], L2[i][j]
Slicing: L3[i:j]
Concatenation:
>>> L1 = [0,1,2]; L2 = [3,4,5]
>>> L1+L2
[0,1,2,3,4,5]
Repetition:
>>> L1*3
[0,1,2,0,1,2,0,1,2]
Appending:
>>> L1.append(3)
[0,1,2,3]
Sorting:
>>> L3 = [2,1,4,3]
>>> L3.sort()
 More list operations:
Reversal:
>>> L4 = [4,3,2,1]
>>> L4.reverse()
>>> L4
[1,2,3,4]
Shrinking:
>>> del L4[2]
Making a list of integers:
>>> range(4)
[0,1,2,3]
>>> range(1,5)
[1,2,3,4]
Types and operators: arrays
 Similarities between arrays and lists:
Arrays and lists are indexed and sliced identically
Arrays and lists both have sort and reverse attributes
Differences between arrays and lists:
With arrays, the + and * signs do not refer to concatenation or repetition
Examples:
>>> ar1 = array([2,4,6])
>>> ar1+2 # Adding a constant to an array adds the constant to each
term
[4,6,8,] # in the array
>>> ar1*2 # Multiplying an array by a constant multiplies each term
in # the array by 2
[4,8,12,]
Contd:
Adding two arrays is just like adding two vectors
>>> ar1 = array([2,4,6]); ar2 = array([1,2,3])
>>> ar1+ar2
[3,6,9,]
Multiplying two arrays multiplies them term by term:
>>> ar1*ar2
[2,8,18,]
Same for division:
>>> ar1/ar2
[2,2,2,]
Assuming the function can take vector arguments, a function
acting on an array acts on each term in the array
>>> ar2**2
[1,4,9,]
Basic Statements: The if statement
 If statements have the following basic structure:
 # inside the interpreter # inside a script
 >>> if condition: if condition:
... action action
...
>>>
4 spaces
>>> x=1
>>> if x< 2:
…. Print ‘Hello world’
….
Hello world
Basic Statements: While statement
 >>> while x < 4 :
…. Print x**2 # square of x
…. x = x+1
….
1
4
9 # sqaure of 4 is not there as 4 is not included
Basic Statements: For statement
 For statements have the following basic structure:
for item i in set s:
action on item i
 # item and set are not statements here; they are merely intended to
clarify the relationships between i and s
 Example:
>>> for i in range(1,7):
... print i, i**2, i**3, i**4
...
1 1 1 1
2 4 8 16
3 9 27 81
4 16 64 256
5 25 125 625
6 36 216 1296
 Example 2 :
>>> L = [0,1,2,3] # or, equivalently, range(4)
>>> for i in range(len(L)):
... L[i] = L[i]**2
...
>>> L
[0,1,4,9]
Functions
 Usually, function definitions have the following basic structure:
 def func(args):
return values
 >>> def f1(x):
... return x*(x-1)
...
>>> f1(3)
 def f2(x,y):
... return x+y,x-y
...
>>> f2(3,2)
(5,1)
 def avg (a,b):
return (a+b) /2
>>> avg(1,1)
1
 def f3():
 ... print 'Hello world'
 ...
 >>> f3()
 Hello world
Note:
 >>> a = 2 # a is assigned in the
interpreter, so it's global
 >>> def f(x): # x is in the function's
argument list, so it's local
 ... y = x+a # y is only assigned inside
the function, so it's local
Programs:
# A program to covert temperature from
Celsius to Fahrenheit
def main():
... Celsius = input("What is the Celsius temperature? ")
... Fahrenheit = (9.0 / 5.0) * Celsius + 32
... print "The temperature is", Fahrenheit, "degrees
Fahrenheit."
...
>>> main()
 A program to compute the value of an investment
carried 10 years into the future
vi inv.py
def main():
print "This program calculates the future value
print "of a 10-year investment."
principal = input("Enter the initial principal: ")
apr = input("Enter the annual interest rate: ")
for i in range(10):
principal = principal * (1 + apr)
print "The value in 10 years is:", principal
$ python –i inv.py
>>> main()
Industry applications:
 web programming (client and server side)
 ad hoc programming ("scripting")
 steering scientific applications
 extension language
 database applications
 GUI applications
 education
Who is using it?
 Google (various projects)
 NASA (several projects)
 Industrial Light & Magic (everything)
 Yahoo! (Yahoo mail & groups)
 Real Networks (function and load testing)
 RedHat (Linux installation tools)
scripting in Python

More Related Content

PPTX
Netlist to GDSII flow new.pptx physical design full info
ODP
axi protocol
PPTX
Introduction to System verilog
PDF
System verilog verification building blocks
PPTX
Amba presentation2
PPTX
System verilog coverage
PDF
Synchronous and asynchronous reset
PPTX
System verilog assertions
Netlist to GDSII flow new.pptx physical design full info
axi protocol
Introduction to System verilog
System verilog verification building blocks
Amba presentation2
System verilog coverage
Synchronous and asynchronous reset
System verilog assertions

What's hot (20)

ODP
APB protocol v1.0
PPT
system verilog
PPSX
Test Bench Development
PPTX
UVM Driver sequencer handshaking
PPTX
DOCX
Intellectual property in vlsi
PDF
Session 2,3 FPGAs
PPTX
Axi protocol
PPT
Vlan
PPTX
Media Access Control
PPTX
Cache memory ppt
PPTX
AMBA 2.0 PPT
PDF
Verilog Tasks & Functions
PPTX
Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC
PPT
Serial Peripheral Interface(SPI)
PPT
Multipliers in VLSI
PPTX
Transport layer protocol
PDF
Session 9 advance_verification_features
PPTX
Introduction to ASICs.pptx
PPTX
5 IEEE standards
APB protocol v1.0
system verilog
Test Bench Development
UVM Driver sequencer handshaking
Intellectual property in vlsi
Session 2,3 FPGAs
Axi protocol
Vlan
Media Access Control
Cache memory ppt
AMBA 2.0 PPT
Verilog Tasks & Functions
Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC
Serial Peripheral Interface(SPI)
Multipliers in VLSI
Transport layer protocol
Session 9 advance_verification_features
Introduction to ASICs.pptx
5 IEEE standards
Ad

Viewers also liked (20)

PDF
Linux Basics
PPTX
CAD: Layout Extraction
PPTX
Reduced ordered binary decision diagram
PPTX
RTX Kernal
PPT
Computer Aided Design: Global Routing
PPTX
CAD: Floorplanning
PPTX
Computer Aided Design: Layout Compaction
PPTX
CAD: introduction to floorplanning
PPTX
Ch 6 randomization
PPT
PPTX
Placement in VLSI Design
PPT
VLSI routing
PPTX
Nmos design using synopsys TCAD tool
PDF
Physical design-complete
PPTX
twin well cmos fabrication steps using Synopsys TCAD
PPT
floor planning
PDF
Floorplanning in physical design
PPT
Introduction to Python
PDF
VLSI-Physical Design- Tool Terminalogy
PPT
Introduction to Python
Linux Basics
CAD: Layout Extraction
Reduced ordered binary decision diagram
RTX Kernal
Computer Aided Design: Global Routing
CAD: Floorplanning
Computer Aided Design: Layout Compaction
CAD: introduction to floorplanning
Ch 6 randomization
Placement in VLSI Design
VLSI routing
Nmos design using synopsys TCAD tool
Physical design-complete
twin well cmos fabrication steps using Synopsys TCAD
floor planning
Floorplanning in physical design
Introduction to Python
VLSI-Physical Design- Tool Terminalogy
Introduction to Python
Ad

Similar to scripting in Python (20)

PPTX
Introduction_to_Python_operators_datatypes.pptx
PPTX
python_computer engineering_semester_computer_language.pptx
PDF
Python: An introduction A summer workshop
PDF
Introduction To Programming with Python
PPTX
Python Scipy Numpy
PPTX
Python Demo.pptx
PPTX
Python For Data Science.pptx
PPTX
Python Demo.pptx
PPT
python language programming presentation
PPT
Python course in_mumbai
PPT
Python course in_mumbai
PDF
ppt_pspp.pdf
PDF
Basics of Python and Numpy_583aab2b47e30ad9647bc4aaf13b884d.pdf
PPTX
Introduction to python programming 1
PPT
Spsl iv unit final
PPT
Spsl iv unit final
PPTX
Basics of Python and Numpy jfhfkfff.pptx
PPTX
funadamentals of python programming language (right from scratch)
PDF
Q-Step_WS_02102019_Practical_introduction_to_Python.pdf
PDF
Introduction to Python
Introduction_to_Python_operators_datatypes.pptx
python_computer engineering_semester_computer_language.pptx
Python: An introduction A summer workshop
Introduction To Programming with Python
Python Scipy Numpy
Python Demo.pptx
Python For Data Science.pptx
Python Demo.pptx
python language programming presentation
Python course in_mumbai
Python course in_mumbai
ppt_pspp.pdf
Basics of Python and Numpy_583aab2b47e30ad9647bc4aaf13b884d.pdf
Introduction to python programming 1
Spsl iv unit final
Spsl iv unit final
Basics of Python and Numpy jfhfkfff.pptx
funadamentals of python programming language (right from scratch)
Q-Step_WS_02102019_Practical_introduction_to_Python.pdf
Introduction to Python

Recently uploaded (20)

PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PDF
Unit1 - AIML Chapter 1 concept and ethics
PPTX
"Array and Linked List in Data Structures with Types, Operations, Implementat...
PDF
Introduction to Power System StabilityPS
PPTX
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
PDF
Design of Material Handling Equipment Lecture Note
PDF
UEFA_Carbon_Footprint_Calculator_Methology_2.0.pdf
PPTX
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
PPTX
ai_satellite_crop_management_20250815030350.pptx
PPTX
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PPTX
A Brief Introduction to IoT- Smart Objects: The "Things" in IoT
PDF
Exploratory_Data_Analysis_Fundamentals.pdf
PDF
First part_B-Image Processing - 1 of 2).pdf
PPTX
Module 8- Technological and Communication Skills.pptx
PDF
August -2025_Top10 Read_Articles_ijait.pdf
PPTX
Petroleum Refining & Petrochemicals.pptx
PPTX
mechattonicsand iotwith sensor and actuator
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PPTX
wireless networks, mobile computing.pptx
PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
Unit1 - AIML Chapter 1 concept and ethics
"Array and Linked List in Data Structures with Types, Operations, Implementat...
Introduction to Power System StabilityPS
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
Design of Material Handling Equipment Lecture Note
UEFA_Carbon_Footprint_Calculator_Methology_2.0.pdf
Chemical Technological Processes, Feasibility Study and Chemical Process Indu...
ai_satellite_crop_management_20250815030350.pptx
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
A Brief Introduction to IoT- Smart Objects: The "Things" in IoT
Exploratory_Data_Analysis_Fundamentals.pdf
First part_B-Image Processing - 1 of 2).pdf
Module 8- Technological and Communication Skills.pptx
August -2025_Top10 Read_Articles_ijait.pdf
Petroleum Refining & Petrochemicals.pptx
mechattonicsand iotwith sensor and actuator
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
wireless networks, mobile computing.pptx
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf

scripting in Python

  • 2. OUTLINE • Why Use Python? • Running Python • Types and Operators • Basic Statements • Functions • Some programs • Industry applications
  • 3. WHY PYTHON?  Python is a general-purpose, interpreted high-level programming language  It's free (open source) Downloading and installing Python is free and easy Source code is easily accessible Free doesn't mean unsupported! Online Python community is huge  It's portable Python runs virtually every major platform used today It just need you to have a compatible Python interpreter installed  It's powerful Dynamic typing Built-in types and tools Library utilities Automatic memory management
  • 4. Running Python  $ python  print 'Hello world'  Hello world # Relevant output is displayed on subsequent lines without the >>> symbol  >>> x = [0,1,2] # Quantities stored in memory are not displayed by default  >>> x # If a quantity is stored in memory, typing its name will display it  [0,1,2]  >>> 2+3  5  >>> # Type ctrl-D to exit the interpreter  $
  • 5.  Suppose the file script.py contains the following lines:  print 'Hello world'  x = [0,1,2] To execute the script  $ python -i script.py  Hello world  >>> x  [0,1,2]  >>>  # “Hello world” is printed, x is stored and can be called later, and the interpreter is left open  >>> import script  Hello world  >>> script.x  [1,2,3]
  • 6. Types and operators: operations on numbers  Basic algebraic operations Four arithmetic operations: a+b, a-b, a*b, a/b Exponentiation: a**b  Comparison operators Greater than, less than, etc.: a < b, a > b ,a <= b, a>= b Identity tests: a == b, a != b  Bitwise operators Bitwise or: a | b Bitwise exclusive or: a ^ b # Don't confuse this with exponentiation Bitwise and: a & b Shift a left or right by b bits: a << b, a >> b
  • 7. Types and operators: strings and operations  Strings are ordered blocks of text Strings are enclosed in single or double quotation marks Examples: 'abc', “ABC”  Concatenation and repetition Strings are concatenated with the + sign: >>> 'abc'+'def' 'abcdef' Strings are repeated with the * sign: >>> 'abc'*3 'abcabcabc'
  • 8.  Indexing and slicing, contd. s[i:j:k] extracts every kth element starting with index i (inclusive) and ending with index j (not inclusive) >>> s[0:5:2] 'srn' Python also supports negative indexes. For example, s[-1] means extract the first element of s from the end. >>> s[-1] 'g‘ >>> s[-2] 'n‘ >>> s.upper() STRING
  • 9.  Indexing and slicing Python starts indexing at 0. A string s will have indexes running from 0 to len(s)-1 (where len(s) is the length of s) in integer quantities. s[i] fetches the i th element in s >>> s = ‘string' >>> s[1] # note that Python considers 't' the first element 't' # of our string s s[i:j] fetches elements i (inclusive) through j (not inclusive) >>> s[1:4] 'tri' s[:j] fetches all elements up to, but not including j >>> s[:3] 'str' s[i:] fetches all elements from i onward (inclusive) >>> s[2:] 'ring'
  • 10. Types and operators: Lists  Basic properties: Lists are contained in square brackets [] Lists can contain numbers, strings, nested sublists, or nothing Examples: L1 = [0,1,2,3], L2 = ['zero', 'one'], L3 = [0,1,[2,3],'three',['four,one']], L4 = [] List indexing and slicing works just like string indexing
  • 11.  Some basic operations on lists: Indexing: L1[i], L2[i][j] Slicing: L3[i:j] Concatenation: >>> L1 = [0,1,2]; L2 = [3,4,5] >>> L1+L2 [0,1,2,3,4,5] Repetition: >>> L1*3 [0,1,2,0,1,2,0,1,2] Appending: >>> L1.append(3) [0,1,2,3] Sorting: >>> L3 = [2,1,4,3] >>> L3.sort()
  • 12.  More list operations: Reversal: >>> L4 = [4,3,2,1] >>> L4.reverse() >>> L4 [1,2,3,4] Shrinking: >>> del L4[2] Making a list of integers: >>> range(4) [0,1,2,3] >>> range(1,5) [1,2,3,4]
  • 13. Types and operators: arrays  Similarities between arrays and lists: Arrays and lists are indexed and sliced identically Arrays and lists both have sort and reverse attributes Differences between arrays and lists: With arrays, the + and * signs do not refer to concatenation or repetition Examples: >>> ar1 = array([2,4,6]) >>> ar1+2 # Adding a constant to an array adds the constant to each term [4,6,8,] # in the array >>> ar1*2 # Multiplying an array by a constant multiplies each term in # the array by 2 [4,8,12,]
  • 14. Contd: Adding two arrays is just like adding two vectors >>> ar1 = array([2,4,6]); ar2 = array([1,2,3]) >>> ar1+ar2 [3,6,9,] Multiplying two arrays multiplies them term by term: >>> ar1*ar2 [2,8,18,] Same for division: >>> ar1/ar2 [2,2,2,] Assuming the function can take vector arguments, a function acting on an array acts on each term in the array >>> ar2**2 [1,4,9,]
  • 15. Basic Statements: The if statement  If statements have the following basic structure:  # inside the interpreter # inside a script  >>> if condition: if condition: ... action action ... >>> 4 spaces >>> x=1 >>> if x< 2: …. Print ‘Hello world’ …. Hello world
  • 16. Basic Statements: While statement  >>> while x < 4 : …. Print x**2 # square of x …. x = x+1 …. 1 4 9 # sqaure of 4 is not there as 4 is not included
  • 17. Basic Statements: For statement  For statements have the following basic structure: for item i in set s: action on item i  # item and set are not statements here; they are merely intended to clarify the relationships between i and s  Example: >>> for i in range(1,7): ... print i, i**2, i**3, i**4 ... 1 1 1 1 2 4 8 16 3 9 27 81 4 16 64 256 5 25 125 625 6 36 216 1296
  • 18.  Example 2 : >>> L = [0,1,2,3] # or, equivalently, range(4) >>> for i in range(len(L)): ... L[i] = L[i]**2 ... >>> L [0,1,4,9]
  • 19. Functions  Usually, function definitions have the following basic structure:  def func(args): return values  >>> def f1(x): ... return x*(x-1) ... >>> f1(3)  def f2(x,y): ... return x+y,x-y ... >>> f2(3,2) (5,1)
  • 20.  def avg (a,b): return (a+b) /2 >>> avg(1,1) 1  def f3():  ... print 'Hello world'  ...  >>> f3()  Hello world
  • 21. Note:  >>> a = 2 # a is assigned in the interpreter, so it's global  >>> def f(x): # x is in the function's argument list, so it's local  ... y = x+a # y is only assigned inside the function, so it's local
  • 22. Programs: # A program to covert temperature from Celsius to Fahrenheit def main(): ... Celsius = input("What is the Celsius temperature? ") ... Fahrenheit = (9.0 / 5.0) * Celsius + 32 ... print "The temperature is", Fahrenheit, "degrees Fahrenheit." ... >>> main()
  • 23.  A program to compute the value of an investment carried 10 years into the future vi inv.py def main(): print "This program calculates the future value print "of a 10-year investment." principal = input("Enter the initial principal: ") apr = input("Enter the annual interest rate: ") for i in range(10): principal = principal * (1 + apr) print "The value in 10 years is:", principal $ python –i inv.py >>> main()
  • 24. Industry applications:  web programming (client and server side)  ad hoc programming ("scripting")  steering scientific applications  extension language  database applications  GUI applications  education
  • 25. Who is using it?  Google (various projects)  NASA (several projects)  Industrial Light & Magic (everything)  Yahoo! (Yahoo mail & groups)  Real Networks (function and load testing)  RedHat (Linux installation tools)