• Like
  • Save
Python bootcamp - C4Dlab, University of Nairobi
Upcoming SlideShare
Loading in...5
×
 

Python bootcamp - C4Dlab, University of Nairobi

on

  • 798 views

 

Statistics

Views

Total Views
798
Views on SlideShare
793
Embed Views
5

Actions

Likes
0
Downloads
16
Comments
0

1 Embed 5

https://twitter.com 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

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.

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

    Python bootcamp - C4Dlab, University of Nairobi Python bootcamp - C4Dlab, University of Nairobi Presentation Transcript

    • Python Bootcamp - C4Dlab SCI labs, University of Nairobi Nov 24th 2013 Kenny Rachuonyo
    • Introduction to Python Features of Python● Simplicity - pseudocode● Free and Open Source - community● High-level – no low-level mngt● Interpreted – run from source● Object-Oriented – simple to use● Extensible – C/C++
    • Features (cont.)● Embeddable – games, graphics,● Extensive Libraries (batteries included) – data compression, OS, Networking, Internet, Multimedia, Graphics
    • Python in the Industry Web● Google – Youtube, backend tasks..● Reddit – news aggregation site● Disqus – commenting service● Numerous web frameworks – django, Zope, webapp2, web.py, pyramid, flask
    • Python in the Industry Desktop● Games – Counterstrike, Civilization IV● Cinema 4D – Graphics● Dropbox● GUI frameworks – PyGTK, PyQT,
    • Python in the Industry Scientific Computing● NASA● Packages: Scipy, Numpy, Matplotlib,
    • Python in the Industry Mobile● Nokia Symbian Series 60● Android – Scripting Layer for Android● Blackberry● Kivy – cross-platform: iOS, Android, Linux, Windows, Mac
    • Python Basics● The interpreter – Installation – Windows (set path)● Datatypes: int, str, float, lists, tuples, dictionaries● Basic I/O
    • Python Basics● Variables – Dynamically-typed vs statically-typed >>> x = 1 >>>y = “hello” – Strongly-typed >>> x + y● Type function >>> type(x)● Integer vs float >>> z = 1.0
    • Python BasicsOperator Operation+ Addition- Subtraction/ Division* Multiplication** Power% Modulus
    • Python Basics● How will this be evaluated? >>>X = 1 + 2 – 3 ** 4 * ( 5+6)
    • Python Basics● Operator Precedence rules Parenthesis Power Multiplication Addition Left-to-right
    • Python Basics● Integer division >>> 4/2 >>> 5/2● Mixing integer and floats >>> 5/2.0● Casting between integer and floats >>> float(5) >>>int(5.0)
    • Python Basics Strings – sequence of characters >>> s = “hello world”● Looking inside >>> s[0]● Concatenation >>> s = ”hello ” + “world”● Finding length >>> len(s)● Slicing >>> s = s[0:5]
    • Python Basics Handy String functions● find >>> s.find(e)● Replace >>> n = s.replace(e, a )● Make upper, lower >>> u = s.upper()
    • Python Basics● Get the second word world by slicing >>> “hello, world”[x:y]
    • Python Basics Lists – collection of values● Declaring >>> l = list() >>> l = []● Can hold different types >>> l = [1, a, [2, 3], 4] >>> l[2]● Appending >>> l.append(an item) >>>del(l[2])
    • Python Basics Lists – collection of values● Getting length >>> len(l)● Slicing >>> l[1:4]● Converting between strings and lists >>> strlist = “this is a string”.split(s) >>> “z”.join(strlist)
    • Python Basics● Append an item to the list within the list >>> l = [1, a, [2, 3], 4] >>> l = [1, a, [2, 3, 5], 4]
    • Python Basics● Handy functions Sum >>> sum([2, 3, 4]) Max >>> max([2, 3, 4]) Min >>> min([2, 3, 4])
    • Python Basics Dictionaries – key, value pairs Associative array, hash table● Declaring >>> d = dict() >>> d = {}● Setting a value >>> d[“event”] = “bootcamp” >>> d = {“event” : “bootcamp” }● Getting a value >>> d[“event”]
    • Python Basics Mutability● Mutable – can change – Lists, dictionary● Immutable – cannot change – Strings, tuples● Try set, del..
    • Python Basics Casting – numbers and strings● Strings and numbers >>> int(“234”) >>> str(234)
    • Python Basics● Importing modules >>> import math >>> math.sqrt(4) >>> from math import sqrt >>> sqrt(4)● dir() function >>> dir(math)
    • Python Basics● Basic I/O >>> name = raw_input() >>> name = raw_input(“Name: “) Input numbers: >>>age = raw_input(“Age: “) >>>age = int(raw_input(“Age: “))
    • Modules● Interactive mode vs modules● Indentation
    • Boolean Values● True >>> 1 < 2● False >>> 1 > 2● Also evaluate to False: “”, [], {}, 0
    • Loops● While loop – while condition is true x=0 while x < 10: print x x=x+1● For loop – loops over items words = [this , is, a, list] for w in words: print w● Loop over strings, dictionaries..● Range() function >>> range(3) >>> range(0, 10, 2)
    • Functions● Defining functions def say_hello(): print “hello”● Calling functions say_hello()● Parameters def sub(a, b): s=a-b return s sub(b=3, a=2)
    • Functions● Commenting in Python def sub(a, b): d = a – b #subtracts b from a return d● Doc strings def sub(a, b): “””this functions takes in 2 integers and returns their difference””” d=a–b return d
    • File I/O● Writing to a file f = open(text.txt, wb) f.write(This is a line.n) f.close()● Reading a file f = open(text.txt, rb) stream = f.read() f.close()
    • Accessing the Web● Establishing a connection – sockets● Requests and Responses – GET, retrieve a webpage – POST, save data● Download a webpage fopen = urllib.urlopen(“http://www.google.com”) data = fopen.read()
    • Demo● Web demo● Scientific computing
    • Next Steps● Intermediate topics: – Classes and objects in Python – Regular Expressions – Exceptions etc● Python on Appengine● Python user group
    • Resources● Official Python Docs tutorial http://docs.python.org/2/tutorial/● A byte of Python http://www.swaroopch.com/notes/python/● Think like a Computer Scientist http://www.openbookproject.net/thinkcs/python/english2e/