background preloader

Reference

Facebook Twitter

Pickle and cPickle – Python object serialization - Python Module of the Week. The pickle module implements an algorithm for turning an arbitrary Python object into a series of bytes.

pickle and cPickle – Python object serialization - Python Module of the Week

This process is also called serializing” the object. The byte stream representing the object can then be transmitted or stored, and later reconstructed to create a new object with the same characteristics. The cPickle module implements the same algorithm, in C instead of Python. It is many times faster than the Python implementation, but does not allow the user to subclass from Pickle. If subclassing is not important for your use, you probably want to use cPickle. Warning The documentation for pickle makes clear that it offers no security guarantees. Importing It is common to first try to import cPickle, giving an alias of “pickle”. Try: import cPickle as pickleexcept: import pickle Encoding and Decoding Data in Strings This first example encodes a data structure as a string, then prints the string to the console. By default, the pickle will contain only ASCII characters.

An Introduction to Classes and Inheritance (in Python) - Jessica Hamrick. If you would like a copy of the code used in this post, you can download it here.

An Introduction to Classes and Inheritance (in Python) - Jessica Hamrick

This post aims to give a short, basic introduction to the concept of classes and inheritance, using Python as the language of choice. It assumes knowledge of very basic Python syntax and functions. These examples were conceived during the Boston Python Workshop this past weekend. Python qr. A guide to Python Namespaces.

This post is part of the Powerful Python series where I talk about features of the Python language that make the programmer’s job easier.

A guide to Python Namespaces

The Powerful Python page contains links to more articles as well as a list of future articles. Namespaces are a fundamental idea in Python and can be very helpful in structuring and organizing your code (especially if you have a large enough project). However, namespaces might be a somewhat difficult concept to grasp and get used to if you’re new to programming or even coming from another programming language (in my case, Java). Think Python. Life is short - you need Python! Think Python. TCP/IP Client and Server - Python Module of the Week. Sockets can be configured to act as a server and listen for incoming messages, or connect to other applications as a client.

TCP/IP Client and Server - Python Module of the Week

After both ends of a TCP/IP socket are connected, communication is bi-directional. Echo Server This sample program, based on the one in the standard library documentation, receives incoming messages and echos them back to the sender. It starts by creating a TCP/IP socket. import socketimport sys # Create a TCP/IP socketsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) Then bind() is used to associate the socket with the server address.

. # Bind the socket to the portserver_address = ('localhost', 10000)print >>sys.stderr, 'starting up on %s port %s' % server_addresssock.bind(server_address) Calling listen() puts the socket into server mode, and accept() waits for an incoming connection. Twisted. Twisted is an event-driven networking engine written in Python and licensed under the open source ​MIT license.

Twisted

Twisted runs on Python 2 and an ever growing subset also works with Python 3. Twisted makes it easy to implement custom network applications. Programming: Languages: Python: Modules. DatabaseInterfaces. This page lists database interfaces available for Python.

DatabaseInterfaces

It may also help in finding a suitable database engine for you to use in your Python database applications. The Python standard for database interfaces is the Python DB-API (PEP 249) Most Python database interfaces adhere to this standard. Most databases have ODBC support; see the section below on ODBC modules. Java databases usually support JDBC, and can be used from Jython. GEGeek - I don't reinvent the wheel, I just link to it. Object-relational mapping.

Not to be confused with Object-Role Modeling.

Object-relational mapping

Object-relational mapping (ORM, O/RM, and O/R mapping) in computer science is a programming technique for converting data between incompatible type systems in object-oriented programming languages. This creates, in effect, a "virtual object database" that can be used from within the programming language. There are both free and commercial packages available that perform object-relational mapping, although some programmers opt to create their own ORM tools. Overview[edit] Implementation-specific details of storage drivers are generally wrapped in an API in the programming language in use, exposing methods to interact with the storage medium in a way which is simpler and more in line with the paradigms of surrounding code.

String sql = "SELECT ... In contrast, the following makes use of an ORM API, allowing the writing of code which naturally makes use of the features of the language. GitHub · Where software is built. Python for Scientists. Linear regression with pylab. In order to compliment my linear regression in google docs post (and because I keep forgetting how to do it), here is a quick and dirty guide to linear regression using python and pylab.

Linear regression with pylab

First some notes. One, there is some good info on this online (how else do you think I find this stuff?). Here is a great link: SciPy Cookbook on linear regression. Second, remember that I do things the ‘hard way’ sometimes. On to the problem. Scientific Analysis in Python. Python based scientific analysis cookbook James Battat Created: October 3, 2006 Last Modified: July 12, 2010 I find Python very user-friendly.

Therefore I often reach for it when tasked to solve small or large scripting problems. I have been rather frustrated, though, with the level of support for scientific analysis packages. With scipy and matplotlib, of course, the tools are all there and success is just around the corner... SciPy - Python Module of the Week. The Python Module of the Week series, or PyMOTW, is a tour of the Python standard library through short examples.

Python Module of the Week

This is version 1.132, last updated Aug 31, 2014 to cover the ConfigParser module. Download Download version 1.132, including all source files with examples and HTML versions of the documentation. 30 Python Language Features and Tricks You May Not Know About. 1 Introduction Since I started learning Python, I decided to maintain an often visited list of "tricks".

30 Python Language Features and Tricks You May Not Know About

Any time I saw a piece of code (in an example, on Stack Overflow, in open source software, etc.) that made me think "Cool! Code Like a Pythonista: Idiomatic Python. In this interactive tutorial, we'll cover many essential Python idioms and techniques in depth, adding immediately useful tools to your belt. There are 3 versions of this presentation: ©2006-2008, licensed under a Creative Commons Attribution/Share-Alike (BY-SA) license. My credentials: I am a resident of Montreal,father of two great kids, husband of one special woman,a full-time Python programmer,author of the Docutils project and reStructuredText,an editor of the Python Enhancement Proposals (or PEPs),an organizer of PyCon 2007, and chair of PyCon 2008,a member of the Python Software Foundation,a Director of the Foundation for the past year, and its Secretary. In the tutorial I presented at PyCon 2006 (called Text & Data Processing), I was surprised at the reaction to some techniques I used that I had thought were common knowledge.

Python Iteration. Created 24 April 2012, last updated 19 March 2013 This is a presentation I gave at PyCon 2013. You can read the slides and text on this page, or open the actual presentation in your browser (use right and left arrows to advance the slides), or watch the video: 30 Python Language Features and Tricks You May Not Know About. Cookiecutter: Better Project Templates — cookiecutter 0.7.1 documentation. Overview — Sarge 0.1.5.dev0 documentation. Start here for all things sarge. What is Sarge for? ¶ Keep This Python Cheat Sheet On Hand When Learning To Code. (the eff-bot guide to) The Standard Python Library.