| Think Python is a concise and gentle introduction to software design using the Python programming language. Intended for would-be developers with no programming experience. This book starts with the most basic concepts and gradually adds new material at a pace that is comfortable to the reader. This book providing a wealth of information on: - Variables, expressions and statements
- Functions
- Conditionals and recursion
- Fruitful functions
- Interation
- Strings
- Lists
- Dictionaries
- Tuples - ordered list of elements
- Files
- Classes and objects / Classes and functions / Classes and methods
- Inheritance
- Case studies on interface design, word play, data structure selection, and Tkinter
It is available under the Creative Commons Attribution-NonCommercial 3.0 Unported License. </td> </tr> </tbody> </table> 2. Invent Your Own Computer Games with Python | | Invent Your Own Computer Games with Python teaches you computer programming in the Python programming language. Each chapter gives you the complete source code for a new game and teaches the programming concepts from these examples. The book is available under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 license. Invent with Python was written to be understandable by kids as young as 10 to 12 years old, although it is suitable for any age. This second edition has revised and expanded content, including using the Pygame library to make games with graphics, animation, and sound. The book focuses on three different areas: - Series of tutorials ranging from a simple "guess the number" game, to drawing game boards with ASCII art, reversi, and simple artifical intelligence simulation
- Make the design for a Hangman game
- Learn new methods and functions that come with Python
- Simple mathematical concepts including cartesian coordinate systems, X-axis and Y-axis, the commutative property of addition, and absolute values and the abs () function
- Use the Pygame library to make games with graphics, animation, mouse input, and sound
- Make graphical user interface programs that have graphics and can accept input from the keyboard and mouse
</td> </tr> </tbody> </table> 3. Snake Wrangling for Kids | | Snake Wrangling for Kids is a printable electronic book, for children 8 years and older, who would like to learn computer programming. It covers the very basics of programming, and uses the Python 3 programming language to teach the concepts. There are 3 different versions of the free book (one for Mac, one for Linux and one for Windows). There have been around 50,000 downloads, as of 2012. It has been rewritten and updated, with new chapters (including developing graphical games), and new code examples This version is licensed under the Creative Commons license. - Use fundamental data structures like lists, tuples, and maps
- Organize and reuse your code with functions and modules
- Use control structures like loops and conditional statements
- Draw shapes and patterns with Python's turtle module
- Create games, animations, and other graphical wonders with Tkinter
</td> </tr> </tbody> </table> 4. Learn Python the Hard Way, 2nd Edition | | This simple book is meant to give you a first start in programming. The title says it is the hard way to learn to write code but it is actually not. It is the hard way only in that it is the way people used to teach things. In this book you will do something incredibly simple that all programmers actually do to learn a language. This is a very beginner book for people who want to learn to code. If you can already code then look elsewhere. It is targeted for newbies to build up their skills before starting a more detailed book. The 2nd Edition features 5 new exercises, fixes and updates to nearly every exercise, and three of the new exercises teach you to create a simple web application as the final part of the book. The book consists of: - 52 Exercises which consist of typing code samples. This helps budding Python programmers to learn the names of the symbols, become familiar with typing them, and reading the language
- Exercises cover topics such as: Variables, printing, functions, boolean algebra, branches and functions, automated testing, and starting your own game
</td> </tr> </tbody> </table> 5. Natural Language Processing with Python | | Website | nltk.org/book/ | Author | Steven Bird, Ewan Klein, and Edward Loper | Format | PDF, Ebook, HTML | Pages | 504 | Natural Language Processing with Python - Analyzing Text with the Natural Language Toolkit offers a highly accessible introduction to natural language processing, the field that supports a variety of language technologies, from predictive text and email filtering to automatic summarization and translation. Learn how to write Python programs that work with large collections of unstructured text. Access richly annotated datasets using a comprehensive range of linguistic data structures, and understand the main algorithms for analyzing the content and structure of written communication. This book is made available under the terms of the Creative Commons Attribution Noncommercial No-Derivative-Works 3.0 US License. This book helps to: - Extract information from unstructured text, either to guess the topic or identify "named entities"
- Analyze linguistic structure in text, including parsing and semantic analysis
- Access popular linguistic databases, including WordNet and treebanks
- Integrate techniques drawn from fields as diverse as linguistics and artificial intelligence
</td> </tr> </tbody> </table> 6. Building Skills in Python | | This 47 chapter book will help you build Python programming skills through a series of exercises. It includes six projects from straightforward to sophisticated that will help solidify your Python skills. This book is a close-to-complete presentation of the Python language, updated to cover Python 2.6 and some elements of Python 3.1. It is oriented toward learning, which involves accumulating many closely intertwined concepts. This book is primarily targeted at professional programmers. The book explores a wide range of topics including: - Numeric Expressions and Output
- Advanced Expressions
- Variables, Assignment and Input
- Truth, Comparison and Conditional Processing
- Loops and Iterative Procssing
- Functions
This book is made available under a Creative Commons Attribution-Noncommercial-No Derivative Works License. </td> </tr> </tbody> </table> 7. Dive into Python | | Website | www.diveintopython.net | Author | Mark Pilgrim | Format | PDF, HTML, Word 97, Plain Text, HTML (single file), XML, Build scripts | Pages | 327 | Dive Into Python is a hands-on guide to the Python language. Each chapter starts with a real, complete code sample, proceeds to pick it apart and explain the pieces, and then puts it all back together in a summary at the end. Explores: - Native Datatypes
- The Power of Introspection
- Objects and Object-Orientation
- Exceptions and File Handling
- Regular Expressions
- HTML Processing
- XML Processing
- Scripts and Streams
- HTTP Web Services
- SOAP Web Services
- Unit Testing
- Refactoring
- Functional Programming
- Dynamic Functions
- Performance Tuning
This book is licensed under the terms of the GNU Free Documentation License, Version 1.1 or any later version. </td> </tr> </tbody> </table> 8. Text Processing in Python | | Website | gnosis.cx/TPiP/ | Author | David Mertz | Format | Smart ASCII format | Pages | 544 | 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. The author provides practical pointers and tips that emphasize efficent, flexible, and maintainable approaches to the text processing tasks that working programmers face daily. Text Processing in Python begins with an introduction to text processing and contains a quick Python tutorial to get you up to speed. It then delves into essential text processing subject areas, including string operations, regular expressions, parsers and state machines, and Internet tools and techniques. Appendixes cover such important topics as data compression and Unicode. This book is copyright to Addison Wesley but can be downloaded without charge. </td> </tr> </tbody> </table> 9. The Standard Python Library | | The Standard Python Library is a guide for serious Python programmers. It offers accurate, author-tested documentation of all the modules in the Python 2.0 Library, together with over 300 annotated example scripts using the modules. The book has chapters on: - Standard and Core Modules
- Threads and Processes
- Data Representation
- File Formats
- Mail and News Messages
- Network Protocols
- Internationalization
- Multimedia Modules
- Data Storage
- Tools and Utilities
- Platform Specific Modules
- Implementation Support Modules
- Other Modules
This is an electronic edition which is based on the second edition published by O'Reilly in 2001. </td> </tr> </tbody> </table> 10. The Definitive Guide to Pylons | | Pylons is a lightweight web framework built on standard Python tools that provides a robust environment for writing modern web applications. It is well known for its clean architecture and loosely coupled approach, both of which make web development fast, flexible, and easy. The Definitive Guide to Pylons teaches you everything you need to know about web development with Pylons - from how to create your first "Hello World!" application to how to use each of Pylons’ core tools including FormEncode, Mako, SQLAlchemy, and Routes to how to perform more advanced tasks such as testing, using Unicode, internationalizing your application, authenticating users, and more. It also helps developers make use of the software's built-in support for session management, web services, and Ajax. This book is made available under the terms of the GNU Free Documentation License, Version 1.2 or any later version. </td> </tr> </tbody> </table> 11. Making Games with Python & Pygame | | This book teaches you how to make graphical computer games in the Python programming language using the Pygame library. It is targeted at the intermediate programmer. The book features the source code to 11 games. Each chapter focuses on a single game program, explaining how different parts of the code work. The games are clones of classics such as Nibbles, Tetris, Simon, Bejeweled, Othello, Ink Spill, Connect Four, Flood It, and others. The programs are less than 600 lines long. The book and the programs are open source, and are available under a Creative Commons Attribution-Noncommercial-Share Alike license. </td> </tr> </tbody> </table> 12. Python Module of the Week | | Python Module of the Week (PyMOTW) is a series of blog posts written by Doug Hellmann. It was started as a way to build the habit of writing something on a regular basis. The focus of the series is building a set of example code for the modules in the Python standard library. PyMOTW is a good source of documentation for Python modules. PyMOTW includes a command line program, motw, to make it easier to access the examples while you are developing. This work is made available under the terms of the Creative Commons Attribution-NonCommercial Share-alike 3.0 license. </td> </tr> </tbody> </table> 13. A Byte of Python | | A Byte of Python is a free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. This book is written for the latest Python 3. This book is released under the Creative Commons Attribution-NonCommercial-ShareAlike License 3.0 Topics covered include: - Basics of Python
- Operators and Expressions
- Control Flow
- Functions
- Modules
- Data Structures
- Problem Solving
- Object Oriented Programming
- Input Output
- Exceptions
- Standard Library
</td> </tr> </tbody> </table> 14. Think Complexity | | This book is about data structures and algorithms, intermediate programming in Python, computational modeling and the philosophy of science: Topics covered include: - Graphs including random and connected graphs
- Analysis of algorithms - the branch of computer science that considers the performance of algorithms
- Small world graphs
- Scale-free networks: Zipf's law, cumulative, continuous and Pareto distributions
- Cellular automata
- Game of Life
- Fractals
- Self-organized criticality
- Case studies
</td> </tr> </tbody> </table> 15. Data Structures and Algorithms with Object-Oriented Design Patterns in Python | | This book is about the fundamentals of data structures and algorithms - the basic elements from which large and complex software artifacts are built. To develop a solid understanding of a data structure requires three things: - Learn how the information is arranged in the memory of the computer
- Become familar with the algorithms for manipulating the information contained in the data structure
- Understand the performance characteristics of the data structure so that when called upon to select a suitable data structure for a particular application
This book also illustrates object-oriented design and it promotes the use of common, object-oriented design patterns. The algorithms and data structures in the book are presented in the Python programming language. Virtually all the data structures are presented in the context of a single class hierarchy. </td> </tr> </tbody> </table> 16. Programming Computer Vision with Python | | This book gives a hands-on introduction to the underlying theory and algorithms of computer vision (images, videos, etc). It seeks to explain computer vision in simple terms, without becoming too embroiled in theory. You will learn techniques for object recognition, 3D reconstruction, stereo imaging, augmented reality, and other computer vision applications as you follow clear examples written in Python. There are complete code samples with accompanying explanations. The Python language compes with many powerful modules for handling images, mathematical computing and data mining. The final draft of the book is released under a Creative Commons license. Topics covered include: - Learn techniques used in robot navigation, medical image analysis, and other computer vision applications
- Work with image mappings and transforms, such as texture warping and panorama creation
- Compute 3D reconstructions from several images of the same scene
- Organize images based on similarity or content, using clustering methods
- Build efficient image retrieval techniques to search for images based on visual content
- Use algorithms to classify image content and recognize objects
- Access the popular OpenCV library through a Python interface
</td> </tr> </tbody> </table> 17. Python for you and me 0.2 | | This book is designed for newcomers to the Python programming language. It is released under the GNU Free Documentation License v1.2 or later. Topics covered include: - Variables and Datatypes
- Operators and expressions
- Control flow
- Looping
- Data structures
- Strings
- Functions
- File handling
- Class
- Modules
- Collections module
- Virtual Python Environment builder
</td> </tr> </tbody> </table> 18. Problem Solving with Algorithms and Data Structures using Python | | This textbook is designed to serve as a text for a first course on data structures and algorithms, typically taught as the second course in the computer science curriculum. The objectives of this book are: - To review the ideas of computer science, programming, and problem-solving
- To understand abstraction and the role it plays in the problem-solving process
- To understand and implement the notion of an abstract data type
- To review the Python programming language
- Getting started with data
- Built-in atomic data types
- Built-in collection data types
- Input and output
- Control structures
- Exception handling
- Defining functions
- Object-oriented programming in Python
</ul> - Discussion questions
- Programming exercises
</ul> </td> </tr> </tbody> </table> 19. The Art and Craft of Programming Python Edition | | This book is designed to be used as the primary textbook in a college-level first course in computing. It takes a fairly traditional approach, emphasizing problem solving, design, and programming as the core skills of computer science. However, these ideas are illustrated using Python. Although Python is used as the language, teaching Python is not the focus of this book. Rather, Python is used to illustrate fundamental principles of design and programming that apply in any language or computing environment. In some places, the author has deliberately avoided certain Python features and idioms that are not generally found in other languages. There are already many good books about Python on the market; this book is intended as an introduction to computing. Topics covered include: - Literals, Combining Literals
- Precedence and associativity
- Variables
- Assignment
- Conditionals
- Functions
- Input and output
- Scope
- Loops
- Lists
- Recursion
- Two-dimensional arrays
</td> </tr> </tbody> </table> 20. Python Programming | | This book describes Python, an open-source general-purpose interpreted programming language. It is licensed under Creative Commons Attribution-Share Alike 3.0 license. Topics covered include: - Basic syntax, data types, numbers, strings, lists, dictionaries, sets, operators
- Flow control, functions, scoping, exceptions, input and output
- Modules, classes, metaclasses, regular expression
- GUI programming covering Tkinter, PyGTK, PyQt, wxPython, Dabo, pyFltk, and other toolkits
- Game programming in Python: 2D and 3D
- Sockets, Files
- Database programming
- Web page harvesting
- Threading
- Extending with C and C++
- WSGI web programming
</td> </tr> </tbody> </table>
| | | | | | | | | | | | | | | | | | | |