A Byte of Python

Introduction

‘A Byte of Python’ is a book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you.

The book has crossed nearly 50,000 downloads in the past few years.

Feedback From Readers

Here are what people are saying about the book:

This is the best beginner’s tutorial I’ve ever seen! Thank you for your effort.

- Walt Michalik (wmich50-at-theramp-dot-net)

You’ve made the best Python tutorial I’ve found on the Net. Great work. Thanks!

- Joshua Robin (joshrob-at-poczta-dot-onet-dot-pl)

I love it. I have never used Python before but this is all I need to get started with Python. Thanks!

- Colin J. Williams (cjw-at-sympatico-dot-ca)

Hi, I’m from Dominican Republic. My name is Pavel, recently I read your book ‘A Byte of Python’ and I consider it excellent!! :). I learnt much from all the examples. Your book is of great help for newbies like me…

- Pavel Simo (pavel-dot-simo-at-gmail-dot-com)

I recently finished reading Byte of Python, and I thought I really ought to thank you. I was very sad to reach the final pages as I now have to go back to dull, tedious oreilly or etc. manuals for learning about python. Anyway, I really appreciate your book

- Samuel Young (sy-one-three-seven-at-gmail-dot-com)

Dear Swaroop, I am taking a class from an instructor that has no interest in teaching. We are using Learning Python, second edition, by O’Reilly. It is not a text for beginner without any programming knowledge, and an instructor that should be working in another field. Thank you very much for your book, without it I would be cluless about Python and programming. Thanks a million, you are able to ‘break the message down’ to a level that beginners can understand and not everyone can.

- Joseph Duarte (jduarte1-at-cfl-dot-rr-dot-com)

I love your book! It is the greatest Python tutorial ever, and a very useful reference. Brilliant, a true masterpiece! Keep up the good work!

- Chris-André Sommerseth

I’m just e-mailing you to thank you for writing Byte of Python online. I had been attempting Python for a few months prior to stumbling across your book, and although I made limited success with pyGame, I never completed a program.

Thanks to your simplification of the categories, Python actually seems a reachable goal. It seems like I have finally learned the foundations and I can continue into my real goal, game development.

Once again, thanks VERY much for placing such a structured and helpful guide to basic programming on the web. It shoved me into and out of OOP with an understanding where two text books had failed.

- Matt Gallivan (m-underscore-gallivan12-at-hotmail-dot-com)

I would like to thank you for your book ‘A byte of python’ which i myself find the best way to learn python. I am a 15 year old i live in egypt my name is Ahmed. Python was my second programming language i learn visual basic 6 at school but didn’t enjoy it, however i really enjoyed learning python. I made the addressbook program and i was sucessful. i will try to start make more programs and read python programs (if you could tell me source that would be helpful). I will also start on learning java and if you can tell me where to find a tutorial as good as yours for java that would help me a lot. Thanx.

- Ahmed Mohammed (sedo-underscore-91-at-hotmail-dot-com)

A wonderful resource for beginners wanting to learn more about Python is the 110-page PDF tutorial A Byte of Python by Swaroop C H. It is well-written, easy to follow, and may be the best introduction to Python programming available.

- Drew Ames in an article on Scripting Scribus published on Linux.com

Academic Courses

This book is being used as instructional material in various educational institutions:

  1. ‘Principles of Programming Languages’ course at Vrije Universiteit, Amsterdam
  2. ‘Basic Concepts of Computing’ course at University of California, Davis
  3. ‘Programming With Python’ course at Harvard University
  4. ‘Introduction to Programming’ course at University of Leeds
  5. ‘Introduction to Application Programming’ course at Boston University
  6. ‘Information Technology Skills for Meteorology’ course at University of Oklahoma
  7. ‘Geoprocessing’ course at Michigan State University
  8. ‘Multi Agent Semantic Web Systems’ course at the University of Edinburgh

Even NASA

The book is even used by NASA! It is being used in their Jet Propulsion Laboratory with their Deep Space Network project.

Official Recommendation

This book has been listed on the official website for Python in the Full Tutorials section, next to the official documentation.

License Terms

This book is released under the Creative Commons Attribution-NonCommercial-ShareAlike 2.0 License. This means you are free to copy, distribute, transmit and adapt the book, as long as you don’t make money out of it and you make your changes available under the same license.

Get The Book

You can read the book online or download the book to your computer and read it.

Downloads

‘HTML chunks’ means HTML multiple files in a zip. Use this if you want to read the book on your computer. ‘HTML single’ means a single HTML file in a zip. Use this if you want to take a printout of the book. ‘PDF’ is self explanatory. TXT means a text version. Use this if you prefer the command line or if you want to read on your handheld. ‘DocBook XML 4.3 source tarball’ means use this if you want the original source or want to translate the book.

Special thanks to Ibiblio, Dave Pawson, Edward Freeman and Alexandru for the mirrors.

Translations

There are many translations of the book available in different human languages, thanks to many tireless volunteers!

If you want to help these translations, please see the list of volunteers and languages below and decide if you want to start a new translation or help in existing translation projects. If you plan to start a new translation, please do write to me.

Chinese

Juan Shen (orion-underscore-val-at-163-dot-com) has volunteered to translate the book to Chinese.

The chinese translation is present at www.byteofpython.info/language/chinese/ .

Juan Shen - I am a postgraduate at Wireless Telecommunication Graduate School, Shanghai Jiao Tong University, China PR. My current research interest is on the synchronization, channel estimation and multi-user detection of multicarrier CDMA system. Python is my major programming language for daily simulation and research job, with the help of Python Numeric, actually. I learned Python just half a year before, but as you can see, it’s really easy-understanding, easy-to-use and productive. Just as what is ensured in Swaroop’s book, ‘It’s my favorite programming language now’.

‘A Byte of Python’ is my tutorial to learn Python. It’s clear and effective to lead you into a world of Python in the shortest time. It’s not too long, but efficiently covers almost all important things in Python. I think ‘A Byte of Python’ should be strongly recommendable for newbies as their first Python tutorial. Just dedicate my translation to the potential millions of Python users in China.

Chinese Traditional

Fred Lin (gasolin-at-gmail-dot-com) has volunteered to translate the book to Chinese Traditional.

It is available at http://code.google.com/p/zhpy/wiki/ByteOfZhpy.

An exciting feature of this translation is that it also contains the executable chinese python sources side by side with the original python sources.

Fred Lin - I’m working as a network firmware engineer at Delta Network, and I’m also a contributor of TurboGears web framework.

As a python evangelist (:-p), I need some material to promote python language. I found ‘A Byte of Python’ hit the sweet point for both newbies and experienced programmers. ‘A Byte of Python’ elaborates the python essentials with affordable size.

The translation are originally based on simplified chinese version, and soon a lot of rewrite were made to fit the current wiki version and the quality of reading.

The recent chinese traditional version also featured with executable chinese python sources, which are achieved by my new ‘zhpy’ (python in chinese) project (launch from Aug 07).

zhpy(pronounce (Z.H.?, or zippy) build a layer upon python to translate or interact with python in chinese(Traditional or Simplified). This project is mainly aimed for education.

Italian

Enrico Morelli and Massimo Lucci have volunteered to translate the book to Italian.

The Italian translation is present at www.gentoo.it/Programmazione/byteofpython.

Massimo Lucci and Enrico Morelli - we are working at the University of Florence (Italy) - Chemistry Department. I (Massimo) as service engineer and system administrator for Nuclear Magnetic Resonance Spectrometers; Enrico as service engineer and system administrator for our CED and parallel / clustered systems. We are programming on python since about seven years, we had experience working with Linux platforms since ten years. In Italy we are responsible and administrator for www.gentoo.it web site for Gentoo/Linux distrubution and www.nmr.it (now under construction) for Nuclear Magnetic Resonance applications and Congress Organization and Managements.

That’s all! We are impressed by the smart language used on your Book and we think this is essential for approaching the Python to new users (we are thinking about hundred of students and researcher working on our labs).

German

Lutz Horn (lutz-dot-horn-at-gmx-dot-de), Bernd Hengelein (bernd-dot-hengelein-at-gmail-dot-com) and Christoph Zwerschke (cito-at-online-dot-de) have volunteered to translate the book to German.

Their project is located at https://developer.berlios.de/projects/abop-german/.

Lutz Horn : I’m 32 years old and have a degree of Mathematics from University of Heidelberg, Germany. Currently I’m working as a software engineer on a publicly funded project to build a web portal for all things related to computer science in Germany.

The main language I use as a professional is Java, but I try to do as much as possible with Python behind the scenes. Especially text analysis and conversion is very easy with Python. I’m not very familiar with GUI toolkits, since most of my programming is about web applications, where the user interface is build using Java frameworks like Struts. Currently I try to make more use of the functional programming features of Python and of generators. After taking a short look into Ruby, I was very impressed with the use of blocks in this language. Generally I like the dynamic nature of languages like Python and Ruby since it allows me to do things not possible in more static languages like Java.

I’ve searched for some kind of introduction to programming, suitable to teach a complete non-programmer. I’ve found the book ‘How to Think Like a Computer Scientist: Learning with Python’, and ‘Dive into Python’. The first is good for beginners but to long to translate. The second is not suitable for beginners. I think ‘A Byte of Python’ falls nicely between these, since it is not too long, written to the point, and at the same time verbose enough to teach a newbie. Besides this, I like the simple DocBook structure, which makes translating the text a generation the output in various formats a charm.

Bernd Hengelein : Lutz and me are going to do the german translation together. We just started with the intro and preface but we will keep you informed about the progress we make.

Ok, now some personal things about me. I am 34 years old and playing with computers since the 1980’s, when the “Commodore C64″ ruled the nurseries. After studying computer science I started working as a software engineer. Currently I am working in the field of medical imaging for a major german company. Although C++ is the main language I (have to) use for my daily work, I am constantly looking for new things to learn.

Last year I fell in love with Python, which is a wonderful language, both for its possibilities and its beauty. I read somewhere in the net about a guy who said that he likes python, because the code looks so beautiful. In my opinion he’s absolutly right. At the time I decided to learn python, I noticed that there is very little good documentation in german available. When I came across your book the spontaneous idea of a german translation crossed my mind. Luckily, Lutz had the same idea and we can now divide the work.

I am looking forward to a good cooperation!

Greek

Aggelos I. Orfanakos (csst0266-at-cs-dot-uoi-dot-gr), a Computer Science student at University of Ioannina, Greece has offered to translate the book to Greek.

Aggelos I. Orfanakos : I am an undergraduate student at the Computer Science Department of the Univesity of Ioannina, Greece. I am programming since I can remember myself using computers; it’s what I like most about them. I started learning Python about 5 months ago, and I immediately fell in love with it. I believe it satisfies a sweet spot between simplicity and power. The first book I ever read about Python was ‘A Byte of Python’ and I think it is ideal for people that are just starting with Python. So, the least thing I could do to give something back to the Python community for this wonderful language, and to you for the book, is offer my ‘translation services’.

Czech

Jaroslav Kubias (jaakubi -at- gmail -dot- com) has volunteered to translate the book to Czech.

Polish

Dominik Kozaczko (dkozaczko-at-gmail-dot-com) has volunteered to translate the book to Polish.

Catalan

Moisés Gómez (moises-underscore-gomez-at-telefonica-dot-net) has volunteered to translate the book to Catalan.

Portuguese

Fidel Viegas (fidel-dot-viegas-at-simulacramedia-dot-com) has volunteered to translate the book to Portuguese.

Brazilian Portuguese

Rodrigo Amaral (rodrigoamaral-at-gmail-dot-com) has volunteered to translate the book to Brazilian Portuguese.

French

Gregory (coulix-at-ozforces-dot-com-dot-au) has volunteered to translate the book to French.

Danish

Lars Petersen (lars-at-ioflux-dot-net) has volunteered to translate the book to Danish.

Spanish

Alfonso de la Guarda Reyes (alfonsodg-at-ictechperu-dot-net) and Gustavo Echeverria (gustavo-dot-echeverria-at-gmail-dot-com) have volunteered to translate the book to Spanish.

Arabic

Alaa Abadi (alaanassir-at-gmail-dot-com) has volunteered to translate the book to Arabic.

Swedish

Mikael Jacobsson (info -at- floss-kodare -dot- se) has volunteered to translate the book to Swedish.

Russian and Ukranian

Averkiev Andrey (averkiyev -at- ukr -dot- net) has volunteered to translate the book to Russian, and perhaps Ukranian (time permitting).



Note: Replace ‘-at-’ with ‘@’ , ‘-dot-’ with ‘.’ and ‘-underscore-’ with ‘_’ in the email addresses mentioned on this page.

About

Swaroop C H is 25 years of age. He graduated in B.E. (Computer Science) from PES Institute of Technology, Bangalore, India. He has previously worked at Yahoo! and Adobe.

More about

Books

  • A Byte of Python

    This book will help you to learn the Python programming language, even if all you know about computers is how to save text files.

    More info

Subscribe

If you want to know when new stories appear on this website, you can subscribe to the RSS feed or have them emailed to you:

RSS

Email

Enter your email address:

del.icio.us articles

Waiting for next proto.in!

I'm attending Proto.in 2008 Delhi!

Recommend

Looking for a good VPS? Get your own slice at SliceHost! SliceHost