Download presentation
Presentation is loading. Please wait.
Published byHenry Harper Modified over 9 years ago
1
Introduction to Python Lecture 1
2
CS 484 – Artificial Intelligence2 Big Picture Language Features Python is interpreted Not compiled Object-oriented language There are no declarations of variables Variables take a retain the type of the data assigned to it Whitespace is used as delimiters no main method
3
CS 484 – Artificial Intelligence3 First Statement Hello World >>> print 'Hello World!' Usually double and single quotes can be used interchangeably A string in double quotes cannot contain a " A string in single quotes cannot contain a ' Put strings in """ if you need both or newlines Try: outputting Hello World on two lines
4
CS 484 – Artificial Intelligence4 Python Calculator You can print the results of expressions (variables and functions) >>> print 6 + 5 >>> print ((8 % 3) ** (7 / 3)) * ( 5 – 1) Integer vs. Floating point division >>> print 15 / 4 >>> print 15 / 4.0
5
CS 484 – Artificial Intelligence5 Using Formatted Strings Combining strings and numbers >>> print 'The total is ', 24+53 Combining strings with many numbers >>> print "The sum of %d and %d is %d" % (7, 18, (7 + 18)) Just like printf in C, other example codes %s – String %x – Hexadecimal %0.2f – A real number with two figures following the decimal point %4d – Leading spaces to pad the number to at least 4 digits %04d – Leading 0's to pad the number to at least 4 digits
6
CS 484 – Artificial Intelligence6 Other important features Comments begin with a # >>> print 7 + 5 # This should print 12 Making use of libraries or other functions and methods you have written >>> import sys >>> sys.exit() >>> from random import * >>> from pyrobot.brain import Brain
7
CS 484 – Artificial Intelligence7 Python Error Messages >>> print 'fred' + 7 Traceback (innermost last): File " ", line 1, in ? TypeError: cannot concatenate 'str' and 'int' objects Errors only reported when line is encountered Python's error messages are often wrong Inspect the line of the error and a few above
8
CS 484 – Artificial Intelligence8 Variables Variables are not declared Can change types with new assignments >>> q = 7 # q is currently a number >>> print q >>> q = 'Seven' # q is reassign to a string >>> print q
9
CS 484 – Artificial Intelligence9 String Operators + operator: String Concatenation >>> print 'Again' + ' and again' * operator: String repetition >>> print 'repeat ' * 3 Combining operators >>> print 'Again' + (' and again' * 3) String methods are documented here http://docs.python.org/lib/string-methods.html http://docs.python.org/lib/string-methods.html
10
CS 484 – Artificial Intelligence10 Boolean Operators C/Java Operator Python Operator A && BA and B A || BA or B A == B A != B A <> B !Anot A Relational operators are all the same 5 <= 6 Boolean values True (case sensitive) False Try print ((5 <= 6) == true)
11
CS 484 – Artificial Intelligence11 Lists A sequence of items Has the ability to grow (unlike array) Use indexes to access elements (array notation) examples aList = [] another = [1,2,3] You can print an entire list or an element print another print another[0] index -1 accesses the end of a list
12
CS 484 – Artificial Intelligence12 List operation append method to add elements (don't have to be the same type) aList.append(42) aList.append(another) del removes elements del aList[0] # removes 42 Concatenate lists with + Add multiple elements with * zerolist = [0] * 5 Multiple assignments point = [1,2] x, y = point More operations can be found at http://docs.python.org/lib/types-set.html http://docs.python.org/lib/types-set.html
13
CS 484 – Artificial Intelligence13 Control Statements Conditionals if : elif : else: Example: name = "Jane" if "a" in name: print "There is an 'a'" else: print "There is not an 'a'" There is no switch statement
14
CS 484 – Artificial Intelligence14 Control Statements Loops while : for in range(i,j): # up to but # not including j Example: name = "Jane" for c in name: print c no do while loops
15
CS 484 – Artificial Intelligence15 Interacting with user Obtaining data from a user Use function raw_input for strings or input for numbers Example name = raw_input("What's your name?") Command Line arguments Example: import sys for item in sys.argv: print item Remember sys.argv[0] is the program name
16
CS 484 – Artificial Intelligence16 Defining New Functions Syntax def ( ): Remember there is not type checking Function may or may not return something Example def times(n): for i in range(1,13): print "%2d x %2d = %3d" % (i, n, i*n)
17
CS 484 – Artificial Intelligence17 Classes Begin with header line class : Constructor and methods tabbed over once first argument is "self" Constructor def __init__(self, ): Methods def (self, ): Class variables self.
18
CS 484 – Artificial Intelligence18 Example Class class Message: def __init__(self, aString): self.text = aString def printIt(self): print self.text def getMessage(self): return self.text Use: from Message import * msg = Message("hi") msg.printIt() Use: from Message import * msg = Message("hi") msg.printIt()
19
CS 484 – Artificial Intelligence19 Using Files Function open opens a file in the mode specified by the argument = open(, ) file name is a string with path and name of the file Possible modes "r" to read "w" to write "rb" to read a binary file "wb" to write a binary file Example input = open("myFile.txt", "r") output = open("copy.txt", "w") for line in input.readlines(): output.write(line) input.close() output.close()
20
CS 484 – Artificial Intelligence20 Sample Program # file: createDict.py # by: Dawn Lawrie # date: September 8, 2005 # Reads the standard dictionary and creates a simpler # dictionary that only includes words in all lowercase letters # without aprostrophes # Opens the input and output files input = open("/usr/share/dict/american-english", "r") output = open("simpleDict", "w") # Reads each lines of the dictionary for line in input.readlines(): # Assumes that the word should not be in the simpler # dictionary good = False
21
CS 484 – Artificial Intelligence21 Sample Program # Accepts the word if it contains at least one lowercase # letter lowercase = "abcdefghijklmnopqrstuvwxyz" for c in lowercase: if not good and c in line: good = True # Rejects the word if there is an apostrophe if "'" in line: good = False # Rejects the word if it contains a uppercase letter if good: caps = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" for c in caps: if good and c in line: good = False
22
CS 484 – Artificial Intelligence22 Sample Program con't # Outputs the word if it is acceptable if good: output.write(line)
23
CS 484 – Artificial Intelligence23 Using String Methods # file: createDict2.py # by: Dawn Lawrie # date: September 8, 2005 … code the opens files has been removed # Reads each lines of the dictionary for line in input.readlines(): # Removes all leading and trailing whitespace word = line.strip() # Outputs the word if all the characters are alphabetic # and they are all lowercase if word.isalpha() and word.islower(): output.write(word + "\n")
24
CS 484 – Artificial Intelligence24 Pitfalls My common mistakes Forgetting ":" in a condition or loop especially after else Emacs helps because it won't tab over Forgetting "self" before class variables Without it python creates a new variable Forgetting the return statement This turned up as a type mismatch when I tried to use the results of the function which I had stored in another variable (Very Confusing)
25
CS 484 – Artificial Intelligence25 Lab Exercise Write a program in python that plays hangman
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.