background preloader

Google Python Class Day 1 Part 3

Google Python Class Day 1 Part 3
Related:  Google Python Class

Python Utilities - Educational Materials In this section, we look at a few of Python's many standard utility modules to solve common problems. File System -- os, os.path, shutil The *os* and *os.path* modules include many functions to interact with the file system. os module docs filenames = os.listdir(dir) -- list of filenames in that directory path (not including . and ..). ## Example pulls filenames from a dir, prints their relative and absolute pathsdef printdir(dir): filenames = os.listdir(dir) for filename in filenames: print filename ## foo.txt print os.path.join(dir, filename) ## dir/foo.txt (relative to current dir) print os.path.abspath(os.path.join(dir, filename)) ## /home/nick/dir/foo.txt Exploring a module works well with the built-in python help() and dir() functions. Running External Processes -- commands The *commands* module is a simple way to run an external command and capture its output. Exceptions The try: section includes the code which might throw an exception. HTTP -- urllib and urlparse Exercise

| Web Python s Python Class - Google's Python Class - Google Code Welcome to Google's Python Class -- this is a free class for people with a little bit of programming experience who want to learn Python. The class includes written materials, lecture videos, and lots of code exercises to practice Python coding. These materials are used within Google to introduce Python to people who have just a little programming experience. The first exercises work on basic Python concepts like strings and lists, building up to the later exercises which are full programs dealing with text files, processes, and http connections. To get started, the Python sections are linked at the left -- Python Set Up to get Python installed on your machine, Python Introduction for an introduction to the language, and then Python Strings starts the coding material, leading to the first exercise. This material was created by Nick Parlante working in the engEDU group at Google. Tip: Check out the Python Google Code University Forum to ask and answer questions.

Free Classes. Awesome Instructors. Inspiring Community. When does the course begin? This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! How much does this cost? It’s completely free! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Learn actively!

Python Regular Expressions - Educational Materials Regular expressions are a powerful language for matching text patterns. This page gives a basic introduction to regular expressions themselves sufficient for our Python exercises and shows how regular expressions work in Python. The Python "re" module provides regular expression support. In Python a regular expression search is typically written as: match =, str) The method takes a regular expression pattern and a string and searches for that pattern within the string. str = 'an example word:cat!!' The code match =, str) stores the search result in a variable named "match". The 'r' at the start of the pattern string designates a python "raw" string which passes through backslashes without change which is very handy for regular expressions (Java needs this feature badly!). Basic Patterns The power of regular expressions is that they can specify patterns, not just fixed characters. a, X, 9, < -- ordinary characters just match themselves exactly. findall

Web Development These tutorials teach you how to process CGI data in Python as well as developing web applications. In addition to modules like cgi and cgitb, web application frameworks and platforms are also discussed. Programming Secure Web Applications in PythonProgramming for security is an imperative for the web programmer. Testing CGI With PythonTesting CGI scripts can be a tedious task, especially when you do not know the environmental variables under which you are programming. Programming CGI With PythonThis tutorial discusses how to use Python to receive and process data from the Common Gateway Interface (CGI). Creating HTML and XHTML Pages in Python - With and Without CGIThis tutorial discusses how to use Python to receive and process data from the Common Gateway Interface (CGI). Building an RSS Reader With PythonAn RSS Reader is a straightforward program, and building one ensures that one knows the basics of the language. feedlist.datThe Data File for an RSS Reader in Python

Learn Python in 10 minutes | Stavros' Stuff NOTE: If you would like some Python development done, my company, Stochastic Technologies, is available for consulting. This tutorial is available as a short ebook. The e-book features extra content from follow-up posts on various Python best practices, all in a convenient, self-contained format. All future updates are free for people who purchase it. Preliminary fluff So, you want to learn the Python programming language but can't find a concise and yet full-featured tutorial. Properties Python is strongly typed (i.e. types are enforced), dynamically, implicitly typed (i.e. you don't have to declare variables), case sensitive (i.e. var and VAR are two different variables) and object-oriented (i.e. everything is an object). Getting help Help in Python is always available right in the interpreter. >>> help(5)Help on int object:(etc etc) >>> dir(5)['__abs__', '__add__', ...] >>> abs. Syntax Python has no mandatory statement termination characters and blocks are specified by indentation. Strings

Electrical Engineering and Computer Science | 6.00 Introduction to Computer Science and Programming, Fall 2008 | Video Lectures Python Dict and File - Educational Materials Dict Hash Table Looking up or setting a value in a dict uses square brackets, e.g. dict['foo'] looks up the value under the key 'foo'. Strings, numbers, and tuples work as keys, and any type can be a value. print dict['a'] ## Simple lookup, returns 'alpha' dict['a'] = 6 ## Put new key/value into dict 'a' in dict ## True ## print dict['z'] ## Throws KeyError if 'z' in dict: print dict['z'] ## Avoid KeyError print dict.get('z') ## None (instead of KeyError) A for loop on a dictionary iterates over its keys by default. ## By default, iterating over a dict iterates over its keys. ## Note that the keys are in a random order. for key in dict: print key ## prints a g o ## Exactly the same as above for key in dict.keys(): print key ## Get the .keys() list: print dict.keys() ## ['a', 'o', 'g'] ## Likewise, there's a .values() list of values print dict.values() ## ['alpha', 'omega', 'gamma'] Dict Formatting The % operator works conveniently to substitute values from a dict into a string by name: Del

Pro Python This series of guides is for the person who wants to perform more advanced Python programming. It is definitely not for the beginner, but someone with a moderate amount of computer programming experience will probably not have a problem jumping in. Topics covered include database programming, web application development, and network programming. Database Development Being able to program a database interface is a critical skill for every Python programmer. Web Development While some programming languages are better known for web development than Python, many major endeavours use Python for mission-critical web-based tasks. Network Applications Network programming is not as hard as it seems.

The Lair of the Python Welcome to the home of the Voidspace Python pages. Not a snake, Python is a dynamic scripting language with a beautifully clean syntax. There's lots of code here to peruse, as well as the Techie Blog which explores life from the point of view of a Pythoneer. Python is a dynamic, object orientated, programming language. Because it's easy to read, it is also easy to learn. In these pages you can find all my Python related stuff. I currently work for a firm called Resolver Systems. You can find more information about IronPython, including a tutorial series on IronPython and Windows Forms (the .NET GUI toolkit for rich client applications) on the IronPython Pages. A programming language is a medium of expression - Paul Graham The programs page contains links to, and descriptions of, the handful of complete programs that I've written. The modules page has links to all the python modules I've written. In the articles section are various articles and tutorials.