Text Processing in Python

My image
  • Author: David Mertz
  • Format: plain text
  • Price: free (hard copy available on Amazon)

Text Processing in Python describes techniques for manipulation of text using the Python programming language. At the broadest level, text processing is simply taking textual information and doing something with it. This might be restructuring or reformatting it, extracting smaller bits of information from it, or performing calculations that depend on the text. Text processing is arguably what most programmers spend most of their time doing.

Because Python is clear, expressive, and object-oriented it is a perfect language for doing text processing, even better than Perl. As the amount of data everywhere continues to increase, this is more and more of a challenge for programmers.

This book is not a tutorial on Python. It has two other goals: helping the programmer get the job done pragmatically and efficiently; and giving the reader an understanding – both theoretically and conceptually – of why what works works and what doesn’t work doesn’t work. Mertz provides practical pointers and tips that emphasize efficient, flexible, and maintainable approaches to the text processing tasks that working programmers face daily.

Chapters include:

  • Python Basics
  • Basic String Operations
  • Regular Expressions
  • Parsers And State-Machines
  • Internet Tools And Techniques
  • A Selective And Impressionistic Short Review Of Python
  • A Data Compression Primer
  • Understanding Unicode
  • A State-Machine For Adding Markup To Text

http://gnosis.cx/TPiP/

Introduction to Programming using Python

My image
  • Author: Katja Schuerer, Corinne Maufrais, Catherine Letondal, Eric Deveaud, Marie-Agnes Petit
  • Format: PDF
  • Price: free

The objective of this course is to teach programming concepts to biologists. It is thus aimed at people who are not professional computer scientists, but who need a better control of computers for their own research.

Chapters include:

  • Introduction
  • Variables
  • Statements, expressions and functions
  • Communication with outside
  • Program execution
  • Strings
  • Branching and Decisions
  • Defining Functions
  • Collections
  • Nested data structures
  • Repetitions
  • Exceptions
  • Functions II
  • Modules and packages in Python
  • Recursive functions
  • Files
  • Scripting
  • Object-oriented programming
  • Object-oriented design

Get the book: Introduction to Programming using Python

Think Python: How to Think Like a Computer Scientist

My image
  • Author: Allen B. Downey
  • Format: online HTML, PDF
  • Price: free (hard copy available on Amazon)

Think Python is an introduction to Python programming for beginners. It starts with basic concepts of programming, and is carefully designed to define all terms when they are first used and to develop each new concept in a logical progression. Larger pieces, like recursion and object-oriented programming are divided into a sequence of smaller steps and introduced over the course of several chapters.

Some examples and exercises are based on Swampy, a Python package written by the author to demonstrate aspects of software design, and to give readers a chance to experiment with simple graphics and animation.

Chapters include:

  • The way of the program
  • Variables, expressions and statements
  • Functions
  • Case study: interface design
  • Conditionals and recursion
  • Fruitful functions
  • Iteration
  • Strings
  • Case study: word play
  • Lists
  • Dictionaries
  • Tuples
  • Case study: data structure selection
  • Files
  • Classes and objects
  • Classes and functions
  • Classes and methods
  • Inheritance
  • Case study: Tkinter
  • Debugging
  • Analysis of Algorithms
  • Lumpy

http://www.greenteapress.com/thinkpython/
Buy this book on Amazon: http://amzn.to/1HVCzyB

The Book of Ruby

My image
  • Author: Huw Collingbourne
  • Format: archived PDF
  • Price: free (hard copy available on Amazon)

The Book Of Ruby (free edition) is a free tutorial to the Ruby language. It contains 425 pages in 20 chapters. It is provided in the form of a PDF document in which each chapter is accompanied by ready-to-run source code for all the examples. There is also an Introduction which explains how to use the source code in Ruby In Steel or any other editor/IDE of your choice plus appendices and an index.

Note that The Book Of Ruby is an in-depth guide to Ruby. For a much simpler guide to the principal features of the Ruby language, there is also the free eBook, The Little Book Of Ruby, by the same author.

Chapters include:

  • Strings, Numbers, Classes and Objects
  • Class Hierarchies, Attributes and Class Variables
  • Strings and Ranges
  • Arrays and Hashes
  • Loops and Iterators
  • Conditional Statements
  • Methods
  • Passing Arguments and Returning Values
  • Exception Handling
  • Blocks, Procs and Lambdas
  • Symbols
  • Modules and Mixins
  • Files and IO
  • YAML
  • Marshal
  • Regular Expressions
  • Threads
  • Debugging and Testing
  • Ruby On Rails
  • Dynamic Programming

Download The Book of Ruby at the bottom of the page:
http://www.sapphiresteel.com/ruby-programming/The-Book-Of-Ruby.html

The Little Book Of Ruby

My image
  • Author: Huw Collingbourne
  • Format: PDF
  • Price: free

The Little Book Of Ruby is a PDF eBook which will guide you through the fundamentals of Ruby programming. Starting with the basics (strings, numbers, objects and methods) it quickly moves on to explain all you need to know to create your own class hierarchies, use arrays, hashes, iterators, modules, mixins and much more besides.

Chapters include:

  • Strings and Methods
  • Classes and Objects
  • Class Hierarchies
  • Accessors, Attributes, Class Variables
  • Arrays
  • Hashes
  • Loops and Iterators
  • Conditional Statements
  • Modules and Mixins
  • Saving Files, Moving On

http://www.sapphiresteel.com/Tutorials/sapphire-ruby-in-steel-tutorials/Programming/article/the-little-book-of-ruby.html