We've ranked the best python books using expert recommendations, sales data, and millions of reader ratings. At Shortform, we know books. Our book guides are the best in the world. Learn why.
Cover unavailable
1
Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming
Eric Matthes
5.0
Second edition of the best selling Python book in the world. A fast-paced, no-nonsense guide to programming in Python. This book teaches beginners the basics of programming in Python with a focus on real projects.
This is the second edition of the best selling Python book in the world. Python Crash Course, 2nd Edition is a straightforward introduction to the core of Python programming. Author Eric Matthes dispenses with the sort of tedious, unnecessary information that can get in the way of learning how to program, choosing instead to provide a foundation in general programming concepts, Python fundamentals, and problem solving. Three real world projects in the second part of the book allow readers to apply their knowledge in useful ways.
Readers will learn how to create a simple video game, use data visualization techniques to make graphs and charts, and build and deploy an interactive web application. Python Crash Course, 2nd Edition teaches beginners the essentials of Python quickly so that they can build practical programs and develop powerful programming techniques.
…
Cover unavailable
2
Automate the Boring Stuff with Python: Practical Programming for Total Beginners
Al Sweigart
5.0
If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?
In "Automate the Boring Stuff with Python," you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation to: Search for text in a file or across multiple filesCreate, update, move, and rename files and foldersSearch the Web and download online contentUpdate and format data in Excel spreadsheets of any sizeSplit, merge, watermark, and encrypt PDFsSend reminder emails and text notificationsFill out online forms
Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.
Don't spend your time doing work a well-trained monkey could do. Even if you've never written a line of code, you can make your computer do the grunt work. Learn how in "Automate the Boring Stuff with Python.""
…
Cover unavailable
3
Fluent Python: Clear, Concise, and Effective Programming
Luciano Ramalho
4.9
Python's simplicity lets you become productive quickly, but this often means you aren't using everything it has to offer. With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.
Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside of their experience. With this book, those Python programmers will thoroughly learn how to become proficient in Python 3.
This book covers:
Python data model: understand how special methods are the key to the consistent behavior of objects
Data structures: take full advantage of built-in types, and understand the text vs bytes duality in the Unicode age
Functions as objects: view Python functions as first-class objects, and understand how this affects popular design patterns
Object-oriented idioms: build classes by learning about references, mutability, interfaces, operator overloading, and multiple inheritance
Control flow: leverage context managers, generators, coroutines, and concurrency with the concurrent.futures and asyncio packages
Metaprogramming: understand how properties, attribute descriptors, class decorators, and metaclasses work "
…
Cover unavailable
4
Python for Data Analysis: Data Wrangling with Pandas, Numpy, and Ipython
Wes McKinney
4.8
Looking for complete instructions on manipulating, processing, cleaning, and crunching structured data in Python? The second edition of this hands-on guide--updated for Python 3.5 and Pandas 1.0--is packed with practical cases studies that show you how to effectively solve a broad set of data analysis problems, using Python libraries such as NumPy, pandas, matplotlib, and IPython.
Written by Wes McKinney, the main author of the pandas library, Python for Data Analysis also serves as a practical, modern introduction to scientific computing in Python for data-intensive applications. It's ideal for analysts new to Python and for Python programmers new to scientific computing.
…
Cover unavailable
5
Learning Python
Mark Lutz
4.8
Portable, powerful, and a breeze to use, Python is the popular open source object-oriented programming language used for both standalone programs and scripting applications. Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. This edition of "Learning Python" puts you in the hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language. "Learning Python," Second Edition, offers programmers a comprehensive learning tool for Python and object-oriented programming. Thoroughly updated for the numerous language and class presentation changes that have taken place since the release of the first edition in 1999, this guide introduces the basic elements of the latest release of Python 2.3 and covers new features, such as list comprehensions, nested scopes, and iterators/generators. Beyond language features, this edition of "Learning Python" also includes new context for less-experienced programmers, including fresh overviews of object-oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. There are also new use cases throughout to make the application of language features more concrete. The first part of "Learning Python" gives programmers all the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering real applications and the libraries available for those applications. Each chapter ends with a series of exercises that will test your Python skills and measure your understanding."Learning Python," Second Edition is a self-paced book that allows readers to focus on the core Python language in depth. As you work through the book, you'll gain a deep and complete understanding of the Python language that will help you to understand the larger application-level examples that you'll encounter on your own. If you're interested in learning Python--and want to do so quickly and efficiently--then "Learning Python," Second Edition is your best choice.
…
Cover unavailable
6
Python Cookbook
David Beazley and Brian K. Jones
4.8
If you need help writing programs in Python 3, or want to update older Python 2 code, this book is just the ticket. Packed with practical recipes written and tested with Python 3.3, this unique cookbook is for experienced Python programmers who want to focus on modern tools and idioms.
Inside, you’ll find complete recipes for more than a dozen topics, covering the core Python language as well as tasks common to a wide variety of application domains. Each recipe contains code samples you can use in your projects right away, along with a discussion about how and why the solution works.
Topics include:
Data Structures and Algorithms Strings and Text Numbers, Dates, and Times Iterators and Generators Files and I/O Data Encoding and Processing Functions Classes and Objects Metaprogramming Modules and Packages Network and Web Programming Concurrency Utility Scripting and System Administration Testing, Debugging, and Exceptions C Extensions
…
Cover unavailable
7
Python Tricks
Dan Bader
4.7
Cover unavailable
8
Effective Python: 59 Specific Ways to Write Better Python
Brett Slatkin
4.7
Each item in Slatkin s "Effective Python" teaches a self-contained lesson with its own source code. This makes the book random-access: Items are easy to browse and study in whatever order the reader needs. I will be recommending "Effective Python" to students as an admirably compact source of mainstream advice on a very broad range of topics for the intermediate Python programmer. " Brandon Rhodes, software engineer at Dropbox and chair of PyCon 2016-2017" It s easy to start coding with Python, which is why the language is so popular. However, Python s unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up. " Effective Python " will help you master a truly Pythonic approach to programming, harnessing Python s full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyers best-selling "Effective C++, " Brett Slatkin brings together 59 Python best practices, tips, and shortcuts, and explains them with realistic code examples. Drawing on years of experience building Python infrastructure at Google, Slatkin uncovers little-known quirks and idioms that powerfully impact code behavior and performance. You ll learn the best way to accomplish key tasks, so you can write code that s easier to understand, maintain, and improve. Key features include Actionable guidelines for all major areas of Python 3.x and 2.x development, with detailed explanations and examples Best practices for writing functions that clarify intention, promote reuse, and avoid bugs Coverage of how to accurately express behaviors with classes and objects Guidance on how to avoid pitfalls with metaclasses and dynamic attributes More efficient approaches to concurrency and parallelism Better techniques and idioms for using Python s built-in modules Tools and best practices for collaborative development Solutions for debugging, testing, and optimization in order to improve quality and performance "
…
Cover unavailable
9
Think Python: How to Think Like a Computer Scientist
Allen B. Downey
4.7
If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for Python 3.
Through exercises in each chapter, you'll try out programming concepts as you learn them. Think Python is ideal for students at the high school or college level, as well as self-learners, home-schooled students, and professionals who need to learn programming basics. Beginners just getting their feet wet will learn how to start with Python in a browser.
Start with the basics, including language syntax and semantics Get a clear definition of each programming concept Learn about values, variables, statements, functions, and data structures in a logical progression Discover how to work with files and databases Understand objects, methods, and object-oriented programming Use debugging techniques to fix syntax, runtime, and semantic errors Explore interface design, data structures, and GUI-based programs through case studies
…
Cover unavailable
10
Python Data Science Handbook: Tools and Techniques for Developers
Jake VanderPlas
4.6
For many researchers, Python is a first-class tool mainly because of its libraries for storing, manipulating, and gaining insight from data. Several resources exist for individual pieces of this data science stack, but only with the Python Data Science Handbook do you get them all—IPython, NumPy, Pandas, Matplotlib, Scikit-Learn, and other related tools.
Working scientists and data crunchers familiar with reading and writing Python code will find this comprehensive desk reference ideal for tackling day-to-day issues: manipulating, transforming, and cleaning data; visualizing different types of data; and using data to build statistical or machine learning models. Quite simply, this is the must-have reference for scientific computing in Python.
With this handbook, you’ll learn how to use: • IPython and Jupyter: provide computational environments for data scientists using Python • NumPy: includes the ndarray for efficient storage and manipulation of dense data arrays in Python • Pandas: features the DataFrame for efficient storage and manipulation of labeled/columnar data in Python • Matplotlib: includes capabilities for a flexible range of data visualizations in Python • Scikit-Learn: for efficient and clean Python implementations of the most important and established machine learning algorithms
…
Recommended by Kirk Borne and 1 others.
Kirk Borne
✨🎉🌟Must see this >> Free #Python #DataScience Coding book series for #DataScientists ...via @DataScienceCtrl Go to https://t.co/To10VVZzIl ——————— #abdsc #BigData #MachineLearning #AI #DeepLearning #BeDataBrilliant #DataLiteracy https://t.co/Msuo1jiZSm [source]
Cover unavailable
11
Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way Series)
Zed A. Shaw
4.6
Master Python and become a programmer -- even if you never thought you could! This breakthrough book and CD can help practically anyone get started in programming. It's called "The Hard Way," but it's really quite simple. What's "hard" is this: it requires discipline, practice, and persistence. Zed A. Shaw teaches the Python programming language through a series of 52 brilliantly-crafted exercises -- all formatted consistently, and none longer than two pages (including "extra credit"). Just read each exercise, type in its sample code precisely (no copy-and-paste!), and make the programs run. As you read, type, fix your mistakes, and watch the results, you'll learn how software works, how programming works, what good programs look like, and how to read, write, and see code. You'll discover how to spot crucial differences that fundamentally affect program behavior, and you'll learn everything you need to know about Python logic, input/output, variables, and functions. Above all, you'll learn the attention to detail that is indispensable to successful programming (and so much else in life). At first, yes, it can be difficult. But it gets easier. And Shaw offers plenty of extra guidance and insight through 5+ full hours of teaching video on the accompanying CD. As Shaw's thousands of online readers and fans will attest, the moment will come when you just "get it" -- and that moment feels great. Nothing important comes without discipline, practice, and persistence. But, with Learn Python the Hard Way, readers who bring those qualities to programming will master it -- and they will reap the rewards, both personally and in their careers.
…
Recommended by Vicki Boykis.
Vicki Boykis
He goes through all of the building blocks that you need to master Python. It’s been updated for Python 3, which is very important as well. It’s very practical and down to earth, with about 50 to 60 exercises, and it’s written in a way that doesn’t feel overwhelming and that really allows you to go through all of them. [source]
Cover unavailable
12
Python Pocket Reference
Mark Lutz
4.6
Updated for both Python 3.4 and 2.7, this convenient pocket guide is the perfect on-the-job quick reference. You’ll find concise, need-to-know information on Python types and statements, special method names, built-in functions and exceptions, commonly used standard library modules, and other prominent Python tools. The handy index lets you pinpoint exactly what you need.
Written by Mark Lutz—widely recognized as the world’s leading Python trainer—Python Pocket Reference is an ideal companion to O’Reilly’s classic Python tutorials, Learning Python and Programming Python, also written by Mark.
This fifth edition covers:
Built-in object types, including numbers, lists, dictionaries, and more Statements and syntax for creating and processing objects Functions and modules for structuring and reusing code Python’s object-oriented programming tools Built-in functions, exceptions, and attributes Special operator overloading methods Widely used standard library modules and extensions Command-line options and development tools Python idioms and hints The Python SQL Database API
…
Cover unavailable
13
Head First Python: A Brain-Friendly Guide
Paul Barry
4.5
Want to learn the Python language without slogging your way through how-to manuals? With Head First Python, you'll quickly grasp Python's fundamentals, working with the built-in data structures and functions. Then you'll move on to building your very own webapp, exploring database management, exception handling, and data wrangling. If you're intrigued by what you can do with context managers, decorators, comprehensions, and generators, it's all here. This second edition is a complete learning experience that will help you become a bonafide Python programmer in no time.
Why does this book look so different? Based on the latest research in cognitive science and learning theory, Head First Pythonuses a visually rich format to engage your mind, rather than a text-heavy approach that puts you to sleep. Why waste your time struggling with new concepts? This multi-sensory learning experience is designed for the way your brain really works.
…
Cover unavailable
14
Python Machine Learning: Machine Learning and Deep Learning with Python, scikit-learn, and TensorFlow 2, 3rd Edition
Sebastian Raschka
4.5
Link to the GitHub Repository containing the code examples and additional material: https://github.com/rasbt/python-machi...
Many of the most innovative breakthroughs and exciting new technologies can be attributed to applications of machine learning. We are living in an age where data comes in abundance, and thanks to the self-learning algorithms from the field of machine learning, we can turn this data into knowledge. Automated speech recognition on our smart phones, web search engines, e-mail spam filters, the recommendation systems of our favorite movie streaming services – machine learning makes it all possible.
Thanks to the many powerful open-source libraries that have been developed in recent years, machine learning is now right at our fingertips. Python provides the perfect environment to build machine learning systems productively.
This book will teach you the fundamentals of machine learning and how to utilize these in real-world applications using Python. Step-by-step, you will expand your skill set with the best practices for transforming raw data into useful information, developing learning algorithms efficiently, and evaluating results.
You will discover the different problem categories that machine learning can solve and explore how to classify objects, predict continuous outcomes with regression analysis, and find hidden structures in data via clustering. You will build your own machine learning system for sentiment analysis and finally, learn how to embed your model into a web app to share with the world
…
Cover unavailable
15
Programming Python
Mark Lutz
4.5
If you've mastered Python's fundamentals, you're ready to start using it to get real work done. Programming Python will show you how, with in-depth tutorials on the language's primary application domains: system administration, GUIs, and the Web. You'll also explore how Python is used in databases, networking, front-end scripting layers, text processing, and more. This book focuses on commonly used tools and libraries to give you a comprehensive understanding of Python’s many roles in practical, real-world programming.
You'll learn language syntax and programming techniques in a clear and concise manner, with lots of examples that illustrate both correct usage and common idioms. Completely updated for version 3.x, Programming Python also delves into the language as a software development tool, with many code examples scaled specifically for that purpose.
Topics include:
Quick Python tour: Build a simple demo that includes data representation, object-oriented programming, object persistence, GUIs, and website basics
System programming: Explore system interface tools and techniques for command-line scripting, processing files and folders, running programs in parallel, and more
GUI programming: Learn to use Python’s tkinter widget library
Internet programming: Access client-side network protocols and email tools, use CGI scripts, and learn website implementation techniques
More ways to apply Python: Implement data structures, parse text-based information, interface with databases, and extend and embed Python
…
Cover unavailable
16
Deep Learning with Python
François Chollet
4.5
Deep learning is applicable to a widening range of artificial intelligence problems, such as image classification, speech recognition, text classification, question answering, text-to-speech, and optical character recognition. It is the technology behind photo tagging systems at Facebook and Google, self-driving cars, speech recognition systems on your smartphone, and much more.
In particular, Deep learning excels at solving machine perception problems: understanding the content of image data, video data, or sound data. Here's a simple example: say you have a large collection of images, and that you want tags associated with each image, for example, "dog," "cat," etc. Deep learning can allow you to create a system that understands how to map such tags to images, learning only from examples. This system can then be applied to new images, automating the task of photo tagging. A deep learning model only has to be fed examples of a task to start generating useful results on new data.
…
Cover unavailable
17
Test-Driven Web Development with Python
Harry Percival
4.5
By taking you through the development of a web application from beginning to end, this book demonstrates the practical advantages of test-driven development with Python. You’ll learn everything from the basics of database integration and the use of JavaScript to browser-automation tools like Selenium, and advanced topics such as NoSQL, Web Sockets, and async programming.
Ideal for beginners, this book teaches a development methodology that leads to peace of mind, cleaner code, and better web apps.
…
Cover unavailable
18
Data Science from Scratch: First Principles with Python
Joel Grus
4.5
To really learn data science, you should not only master the tools--data science libraries, frameworks, modules, and toolkits--but also understand the ideas and principles underlying them. Updated for Python 3.6, this second edition of Data Science from Scratch shows you how these tools and algorithms work by implementing them from scratch.
If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with the hacking skills you need to get started as a data scientist. Packed with new material on deep learning, statistics, and natural language processing, this updated book shows you how to find the gems in today's messy glut of data.
* Get a crash course in Python * Learn the basics of linear algebra, statistics, and probability--and how and when they're used in data science * Collect, explore, clean, munge, and manipulate data * Dive into the fundamentals of machine learning * Implement models such as k-nearest neighbors, Naive Bayes, linear and logistic regression, decision trees, neural networks, and clustering * Explore recommender systems, natural language processing, network analysis, MapReduce, and databases
…
Recommended by Balaji S. Srinivasan and Thorsten Heller.
Thorsten Heller
The Best #book to Start your #DataScience Journey - Towards #DataScience https://t.co/D8PlkkSxw6 by @benthecoder1 [source]
Cover unavailable
19
Flask Web Development: Developing Web Applications with Python
Miguel Grinberg
4.5
Take full creative control of your web applications with Flask, the Python-based microframework. With the second edition of this hands-on book, you'll learn Flask from the ground up by developing a complete, real-world application created by author Miguel Grinberg. This refreshed edition accounts for important technology changes that have occurred in the past three years.
Explore the framework's core functionality, and learn how to extend applications with advanced web techniques such as database migrations and an application programming interface. The first part of each chapter provides you with reference and background for the topic in question, while the second part guides you through a hands-on implementation.
If you have Python experience, you're ready to take advantage of the creative freedom Flask provides. Three sections include:
A thorough introduction to Flask: explore web application development basics with Flask and an application structure appropriate for medium and large applications
Building Flasky: learn how to build an open source blogging application step-by-step by reusing templates, paginating item lists, and working with rich text
Going the last mile: dive into unit testing strategies, performance analysis techniques, and deployment options for your Flask application
…
Cover unavailable
20
Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
Geron
4.5
Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.
By using concrete examples, minimal theory, and two production-ready Python frameworks-scikit-learn and TensorFlow-author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple linear regression and progressing to deep neural networks. With exercises in each chapter to help you apply what you've learned, all you need is programming experience to get started.
Explore the machine learning landscape, particularly neural nets Use scikit-learn to track an example machine-learning project end-to-end Explore several training models, including support vector machines, decision trees, random forests, and ensemble methods Use the TensorFlow library to build and train neural nets Dive into neural net architectures, including convolutional nets, recurrent nets, and deep reinforcement learning Learn techniques for training and scaling deep neural nets Apply practical code examples without acquiring excessive machine learning theory or algorithm details
…
Recommended by Mark Tabladillo.
Mark Tabladillo
Book to Start You on Machine Learning - KDnuggets https://t.co/19fdX59b0d This book is “Hands-On Machine Learning with Scikit-Learn & TensorFlow”. each new revision has become an even better version of one of the best in-depth resources to learn Machine Learning by doing. https://t.co/ujyUH3xU3e [source]
Cover unavailable
21
Python for Kids
Jason R. Briggs
4.4
Python for Kids is a lighthearted introduction to the Python language and programming in general, complete with illustrations and kid-friendly examples. Jason Briggs, author of the popular online tutorial "Snake Wrangling for Kids," begins with the basics of how to install Python and write simple commands. In bite-sized chapters, he instructs readers on the essentials of Python, including how to use Python's extensive standard library, the difference between strings and lists, and using for-loops and while-loops. By the end of the book, readers have built a game and created drawings with Python's graphics library, Turtle. Each chapter closes with fun and relevant exercises that challenge the reader to put their newly acquired knowledge to the test.
…
Cover unavailable
22
Python for Everybody: Exploring Data in Python 3
Charles Severance
4.4
Python for Everybody is designed to introduce students to programming and software development through the lens of exploring data. You can think of the Python programming language as your tool to solve data problems that are beyond the capability of a spreadsheet. Python is an easy to use and easy to learn programming language that is freely available on Macintosh, Windows, or Linux computers. So once you learn Python you can use it for the rest of your career without needing to purchase any software. There are free downloadable electronic copies of this book in various formats and supporting materials for the book at www.pythonlearn.com. The course materials are available to you under a Creative Commons License so you can adapt them to teach your own Python course.
…
Cover unavailable
23
Introduction to Machine Learning with Python: A Guide for Data Scientists
Andreas C. Müller and Sarah Guido
4.4
Machine learning has become an integral part of many commercial applications and research projects, but this field is not exclusive to large companies with extensive research teams. If you use Python, even as a beginner, this book will teach you practical ways to build your own machine learning solutions. With all the data available today, machine learning applications are limited only by your imagination.
You'll learn the steps necessary to create a successful machine-learning application with Python and the scikit-learn library. Authors Andreas Muller and Sarah Guido focus on the practical aspects of using machine learning algorithms, rather than the math behind them. Familiarity with the NumPy and matplotlib libraries will help you get even more from this book.
With this book, you'll learn:
Fundamental concepts and applications of machine learning Advantages and shortcomings of widely used machine learning algorithms How to represent data processed by machine learning, including which data aspects to focus on Advanced methods for model evaluation and parameter tuning The concept of pipelines for chaining models and encapsulating your workflow Methods for working with text data, including text-specific processing techniques Suggestions for improving your machine learning and data science skills
…
Recommended by Francesco Marconi.
Francesco Marconi
Top programming languages ranked by its annual search engine popularity. Python has gained momentum because of its importance to machine learning development. At @WSJ we are using it to build tools for journalists. Tip: this is a great book for anyone who wants to get started! https://t.co/ZsHjqB5gvC [source]
Cover unavailable
24
Python Essential Reference (Developer's Library)
David M. Beazley
4.4
Cover unavailable
25
Introduction to Computation and Programming Using Python: With Application to Understanding Data
John V. Guttag
4.4
This book introduces students with little or no prior programming experience to the art of computational problem solving using Python and various Python libraries, including PyLab. It provides students with skills that will enable them to make productive use of computational techniques, including some of the tools and techniques of data science for using computation to model and interpret data. The book is based on an MIT course (which became the most popular course offered through MIT's OpenCourseWare) and was developed for use not only in a conventional classroom but in in a massive open online course (MOOC). This new edition has been updated for Python 3, reorganized to make it easier to use for courses that cover only a subset of the material, and offers additional material including five new chapters.
Students are introduced to Python and the basics of programming in the context of such computational concepts and techniques as exhaustive enumeration, bisection search, and efficient approximation algorithms. Although it covers such traditional topics as computational complexity and simple algorithms, the book focuses on a wide range of topics not found in most introductory texts, including information visualization, simulations to model randomness, computational techniques to understand data, and statistical techniques that inform (and misinform) as well as two related but relatively advanced topics: optimization problems and dynamic programming. This edition offers expanded material on statistics and machine learning and new chapters on Frequentist and Bayesian statistics.
…
Cover unavailable
26
Natural Language Processing with Python
Steven Bird, Ewan Klein, Edward Loper
4.4
This book 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. With it, you'll learn how to write Python programs that work with large collections of unstructured text. You'll access richly annotated datasets using a comprehensive range of linguistic data structures, and you'll understand the main algorithms for analyzing the content and structure of written communication.
Packed with examples and exercises, Natural Language Processing with Python will help you: 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
This book will help you gain practical skills in natural language processing using the Python programming language and the Natural Language Toolkit (NLTK) open source library. If you're interested in developing web applications, analyzing multilingual news sources, or documenting endangered languages -- or if you're simply curious to have a programmer's perspective on how human language works -- you'll find Natural Language Processing with Python both fascinating and immensely useful.
…
Cover unavailable
27
Introducing Python: Modern Computing in Simple Packages
Bill Lubanovic
4.4
Easy to understand and fun to read, this updated edition of Introducing Python is ideal for beginning programmers as well as those new to the language. Author Bill Lubanovic takes you from the basics to more involved and varied topics, mixing tutorials with cookbook-style code recipes to explain concepts in Python 3. End-of-chapter exercises help you practice what you've learned.
You'll gain a strong foundation in the language, including best practices for testing, debugging, code reuse, and other development tips. This book also shows you how to use Python for applications in business, science, and the arts, using various Python tools and open source packages.
…
Cover unavailable
28
Python 3 Object-Oriented Programming: Build robust and maintainable software with object-oriented design patterns in Python 3.8, 3rd Edition
Dusty Phillips
4.4
Uncover modern Python with this guide to Python data structures, design patterns, and effective object-oriented techniques
Key Features In-depth analysis of many common object-oriented design patterns that are more suitable to Python's unique style Learn the latest Python syntax and libraries Explore abstract design patterns and implement them in Python 3.8 Book Description
Object-oriented programming (OOP) is a popular design paradigm in which data and behaviors are encapsulated in such a way that they can be manipulated together. This third edition of Python 3 Object-Oriented Programming fully explains classes, data encapsulation, and exceptions with an emphasis on when you can use each principle to develop well-designed software.
Starting with a detailed analysis of object-oriented programming, you will use the Python programming language to clearly grasp key concepts from the object-oriented paradigm. You will learn how to create maintainable applications by studying higher level design patterns. The book will show you the complexities of string and file manipulation, and how Python distinguishes between binary and textual data. Not one, but two very powerful automated testing systems, unittest and pytest, will be introduced in this book. You'll study higher level libraries such as database connectors and GUI toolkits and learn how they uniquely apply object-oriented principles. You will understand how these principles will allow you to make greater use of key members of the Python eco-system such as Django and Kivy to develop effective websites.
By the end of the book, you will have learned Python syntax and be able to create robust and reliable programs confidently.
What you will learn Implement objects in Python by creating classes and defining methods Grasp common concurrency techniques and pitfalls in Python 3 Extend class functionality using inheritance Understand when to use object-oriented features, and more importantly when not to use them Discover what design patterns are and why they are different in Python Uncover the simplicity of unit testing and why it's so important in Python Explore object-oriented programming concurrently with asyncio Who This Book Is For
If you're new to object-oriented programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply OOP in Python, this is the book for you. If you are an object-oriented programmer for other languages or seeking a leg up in the new world of Python 3.8, you too will find this book a useful introduction to Python. Previous experience with Python 3 is not necessary.
About the Author
Dusty Phillips is a Canadian software developer and author currently living in New Brunswick. He has been active in the open source community for two decades and programming in Python for nearly as long. He holds a master's degree in computer science and has worked for Facebook, the United Nations, and several startups. He's currently researching privacy preserving technology at beanstalk.network.
Python 3 Object Oriented Programming was his first book. He has also written Creating Apps In Kivy, and self-published Hacking Happy, a journey to mental wellness for the technically inclined. A work of fiction is coming as well, so stay tuned!
…
Cover unavailable
29
Problem Solving with Algorithms and Data Structures Using Python
Bradley N. Miller and David L. Ranum
4.4
THIS TEXTBOOK is about computer science. It is also about Python. However, there is much more. The study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice so that there is a thorough understanding before continuing on to the more complex parts of the curriculum. In addition, a beginner needs to be given the opportunity to be successful and gain confidence. 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. Even though the second course is considered more advanced than the first course, this book assumes you are beginners at this level. You may still be struggling with some of the basic ideas and skills from a first computer science course and yet be ready to further explore the discipline and continue to practice problem solving. We cover abstract data types and data structures, writing algorithms, and solving problems. We look at a number of data structures and solve classic problems that arise. The tools and techniques that you learn here will be applied over and over as you continue your study of computer science.
…
Cover unavailable
30
The Quick Python Book
Naomi Ceder
4.3
This revision of Manning's popular The Quick Python Book offers a clear, crisp introduction to the elegant Python programming language and its famously easy-to-read syntax.
After exploring Python's syntax, control flow, and basic data structures, the book shows how to create, test, and deploy full applications and larger code libraries. It addresses established Python features as well as the advanced object-oriented options available in Python 3. This edition covers 5 years worth of minor updates to the language, and the last 5 chapters have been reworked to be data based project work.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
…
Cover unavailable
31
A Byte of Python
Swaroop C
4.3
An introduction to Python programming for beginners.
Cover unavailable
32
Dive Into Python
Mark Pilgrim
4.3
Whether you're an experienced programmer looking to get into Python or grizzled Python veteran who remembers the days when you had to import the string module, Dive Into Python is your 'desert island' Python book.
-- Joey deVilla, Slashdot contributor
As a complete newbie to the language...I constantly had those little thoughts like, 'this is the way a programming language should be taught.'
-- Lasse Koskela, JavaRanch
Apress has been profuse in both its quantity and quality of releasesand (this book is) surely worth adding to your technical reading budget for skills development.
-- Blane Warrene, Technology Notes
I am reading this ... because the language seems like a good way to accomplish programming tasks that don't require the low-level bit handling power of C.
-- Richard Bejtlich, TaoSecurity
Python is a new and innovative scripting language. It is set to replace Perl as the programming language of choice for shell scripters, and for serious application developers who want a feature-rich, yet simple language to deploy their products.
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.
This is the perfect resource for you if you like to jump into languages fast and get going right away. If you're just starting to learn Python, first pick up a copy of Magnus Lie Hetland's Practical Python.
…
Cover unavailable
33
Web Scraping with Python: Collecting More Data from the Modern Web
Ryan Mitchell
4.3
Cover unavailable
34
Black Hat Python: Python Programming for Hackers and Pentesters
Justin Seitz
4.3
When it comes to creating powerful and effective hacking tools, Python is the language of choice for most security analysts. But just how does the magic happen?
In Black Hat Python, the latest from Justin Seitz (author of the best-selling Gray Hat Python), you'll explore the darker side of Python's capabilities writing network sniffers, manipulating packets, infecting virtual machines, creating stealthy trojans, and more. You'll learn how to:
Create a trojan command-and-control using GitHub Detect sandboxing and automate common malware tasks, like keylogging and screenshotting Escalate Windows privileges with creative process control Use offensive memory forensics tricks to retrieve password hashes and inject shellcode into a virtual machine Extend the popular Burp Suite web-hacking tool Abuse Windows COM automation to perform a man-in-the-browser attack Exfiltrate data from a network most sneakily Insider techniques and creative challenges throughout show you how to extend the hacks and how to write your own exploits.When it comes to offensive security, your ability to create powerful tools on the fly is indispensable. Learn how in Black Hat Python.
"
…
Cover unavailable
35
Cracking Codes with Python: A Beginner's Guide to Cryptography and Computer Programming
Al Sweigart
4.3
In Cracking Codes with Python, you'll learn how to program in Python while making and breaking ciphers, which are used to encrypt secret messages. (No programming experience required!). After a quick crash course in programming, you'll make, test, and hack classic cipher programs. You'll begin with simple programs like the Caesar cipher and then work your way up to public key cryptography and the RSA cipher, which is used for modern secure data transmissions. Each program comes with the full code and a line-by-line explanation of how things work. By book's end, you'll walk away with a solid foundation in Python and same crafty programs under your belt. Learn how to: -Combine loops, variables, and flow control statements into real working programs -Use dictionary files to instantly detect whether text is English or nonsense -Create programs to test that the code you've written is working correctly -Write your own programming modules that you can import and use in other programs -Debug your programs and find common errors Cracking Codes with Python is a chance to pick up some Python skills while getting a peek into the intriguing world of cryptography--what more could an aspiring hacker want?
…
Cover unavailable
36
Dive Into Python 3
Mark Pilgrim
4.3
Mark Pilgrim's Dive Into Python 3 is a hands-on guide to Python 3 and its differences from Python 2. As in the original book, Dive Into Python, 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.
This book includes:
Example programs completely rewritten to illustrate powerful new concepts now available in Python 3: sets, iterators, generators, closures, comprehensions, and much more A detailed case study of porting a major library from Python 2 to Python 3 A comprehensive appendix of all the syntactic and semantic changes in Python 3 This is the perfect resource for you if you need to port applications to Python 3, or if you like to jump into languages fast and get going right away.
…
Cover unavailable
37
Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers
TJ O'Connor
4.3
Violent Python shows you how to move from a theoretical understanding of offensive computing concepts to a practical implementation. Instead of relying on another attacker's tools, this book will teach you to forge your own weapons using the Python programming language. This book demonstrates how to write Python scripts to automate large-scale network attacks, extract metadata, and investigate forensic artifacts. It also shows how to write code to intercept and analyze network traffic using Python, craft and spoof wireless frames to attack wireless and Bluetooth devices, and how to data-mine popular social media websites and evade modern anti-virus.
Demonstrates how to write Python scripts to automate large-scale network attacks, extract metadata, and investigate forensic artifacts Write code to intercept and analyze network traffic using Python. Craft and spoof wireless frames to attack wireless and Bluetooth devices Data-mine popular social media websites and evade modern anti-virus
…
Cover unavailable
38
Beginning Python: From Novice to Professional
Magnus Lie Hetland
4.3
"Beginning Python: From Novice to Professional" is the most comprehensive book on the Python ever written. Based on "Practical Python," this newly-revised book is both an introduction and practical reference for a swath of Python-related programming topics, including addressing language internals, database integration, network programming, and web services. Advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.
Ten different projects illustrate the concepts introduced in the book. You will learn how to create a P2P file-sharing application and a web-based bulletin board, and how to remotely edit web-based documents and create games. Author Magnus Lie Hetland is an authority on Python and previously authored "Practical Python." He also authored the popular online guide, Instant Python Hacking, on which both books are based.
…
Cover unavailable
39
Invent Your Own Computer Games with Python, 4e
Al Sweigart
4.3
Invent Your Own Computer Games with Python will teach you how to make computer games using the popular Python programming language--even if you've never programmed before!
Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. Along the way, you'll learn key programming and math concepts that will help you take your game programming to the next level.
Learn how to: -Combine loops, variables, and flow control statements into real working programs -Choose the right data structures for the job, such as lists, dictionaries, and tuples -Add graphics and animation to your games with the pygame module -Handle keyboard and mouse input -Program simple artificial intelligence so you can play against the computer -Use cryptography to convert text messages into secret code -Debug your programs and find common errors
As you work through each game, you'll build a solid foundation in Python and an understanding of computer science fundamentals.
What new game will you create with the power of Python?
The projects in this book are compatible with Python 3.
…
Cover unavailable
40
Python Programming: An Introduction to Computer Science
John Zelle
4.3
This third edition of John Zelle's Python Programming continues the tradition of updating the text to reflect new technologies while maintaining a time-tested approach to teaching introductory computer science. An important change to this edition is the removal of most uses of eval and the addition of a discussion of its dangers. In our increasingly connected world, it's never too early to begin considering computer security issues. This edition also uses several new graphics examples, developed throughout chapters 4-12.
…
Cover unavailable
41
High Performance Python: Practical Performant Programming for Humans
Micha Gorelick, Ian Ozsvald
4.3
If you're an experienced Python programmer, High Performance Python will guide you through the various routes of code optimization. You'll learn how to use smarter algorithms and leverage peripheral technologies, such as numpy, cython, cpython, and various multi-threaded and multi-node strategies.
There's a lack of good learning and reference material available if you want to learn Python for highly computational tasks. Because of it, fields from physics to biology and systems infrastructure to data science are hitting barriers. They need the fast prototyping nature of Python, but too few people know how to wield it. This book will put you ahead of the curve.
…
Cover unavailable
42
Python for Informatics: Exploring Information
Dr. Charles R Severance
4.3
This book is designed to introduce students to programming and computational thinking through the lens of exploring data. You can think of Python as your tool to solve problems that are far beyond the capability of a spreadsheet. It is an easy-to-use and easy-to learn programming language that is freely available on Windows, Macintosh, and Linux computers. There are free downloadable copies of this book in various electronic formats and a self-paced free online course where you can explore the course materials. All the supporting materials for the book are available under open and remixable licenses at the www.py4inf.com web site. This book is designed to teach people to program even if they have no prior experience. This book covers Python 2. An updated version of this book that covers Python 3 is available and is titled, "Python for Everybody: Exploring Data in Python 3".
…
Cover unavailable
43
Core Python Programming
Wesley J Chun
4.3
Praise for Core Python Programming "The long-awaited second edition of Wesley Chun's Core Python Programming proves to be well worth the wait--its deep and broad coverage and useful exercises will help readers learn and practice good Python." --Alex Martelli, author of Python in a Nutshell and editor of Python Cookbook "There has been lot of good buzz around Wesley Chun's Core Python Programming. It turns out that all the buzz is well earned. I think this is the best book currently available for learning Python. I would recommend Chun's book over Learning Python (O'Reilly), Programming Python (O'Reilly), or The Quick Python Book (Manning)." --David Mertz, Ph.D., IBM DeveloperWorks(R) "I have been doing a lot of research [on] Python for the past year and have seen a number of positive reviews of your book. The sentiment expressed confirms the opinion that Core Python Programming is now considered the standard introductory text." --Richard Ozaki, Lockheed Martin "Finally, a book good enough to be both a textbook and a reference on the Python language now exists." --Michael Baxter, Linux Journal "Very well written. It is the clearest, friendliest book I have come across yet for explaining Python, and putting it in a wider context. It does not presume a large amount of other experience. It does go into some important Python topics carefully and in depth. Unlike too many beginner books, it never condescends or tortures the reader with childish hide-and-seek prose games. [It] sticks to gaining a solid grasp of Python syntax and structure." --http: //python.org bookstore Web site "[If ] I could only own one Python book, it would be Core Python Programming by Wesley Chun. This book manages to cover more topics in more depth than Learning Python but includes it all in one book that also more than adequately covers the core language. [If] you are in the market for just one book about Python, I recommend this book. You will enjoy reading it, including its wry programmer's wit. More importantly, you will learn Python. Even more importantly, you will find it invaluable in helping you in your day-to-day Python programming life. Well done, Mr. Chun!" --Ron Stephens, Python Learning Foundation "I think the best language for beginners is Python, without a doubt. My favorite book is Core Python Programming." --s003apr, MP3Car.com Forums "Personally, I really like Python. It's simple to learn, completely intuitive, amazingly flexible, and pretty darned fast. Python has only just started to claim mindshare in the Windows world, but look for it to start gaining lots of support as people discover it. To learn Python, I'd start with Core Python Programming by Wesley Chun." --Bill Boswell, MCSE, Microsoft Certified Professional Magazine Online "If you learn well from books, I suggest Core Python Programming. It is by far the best I've found. I'm a Python newbie as well and in three months time I've been able to implement Python in projects at work (automating MSOffice, SQL DB stuff, etc.)." --ptonman, Dev Shed Forums "Python is simply a beautiful language. It's easy to learn, it's cross-platform, and it works. It has achieved many of the technical goals that Java strives for. A one-sentence description of Python would be: 'All other languages appear to have evolved over time--but Python was designed.' And it was designed well. Unfortunately, there aren't a large number of books for Python. The best one I've run across so far is Core Python Programming." --Chris Timmons, C. R. Timmons Consulting "If you like the Prentice Hall Core series, another good full-blown treatment to consider would be Core Python Programming. It addresses in elaborate concrete detail many practical topics that get little, if any, coverage in other books." --Mitchell L Model, MLM Consulting "Core Python Programming is an amazingly easy read! The liberal use of examples helps clarify some of the more subtle points of the language. And the comparisons to languages with which I'm already familiar (C/C++/Java) get you programming in record speed." --Michael Santos, Ph.D., Green Hills Software The Complete Developer's Guide to Python New to Python? The definitive guide to Python development for experienced programmers Covers core language features thoroughly, including those found in the latest Python releases--learn more than just the syntax! Learn advanced topics such as regular expressions, networking, multithreading, GUI, Web/CGI, and Python extensions Includes brand-new material on databases, Internet clients, Java/Jython, and Microsoft Office, plus Python 2.6 and 3 Presents hundreds of code snippets, interactive examples, and practical exercises to strengthen your Python skills Python is an agile, robust, expressive, fully object-oriented, extensible, and scalable programming language. It combines the power of compiled languages with the simplicity and rapid development of scripting languages. In Core Python Programming, Second Edition, leading Python developer and trainer Wesley Chun helps you learn Python quickly and comprehensively so that you can immediately succeed with any Python project. Using practical code examples, Chun introduces all the fundamentals of Python programming: syntax, objects and memory management, data types, operators, files and I/O, functions, generators, error handling and exceptions, loops, iterators, functional programming, object-oriented programming and more. After you learn the core fundamentals of Python, he shows you what you can do with your new skills, delving into advanced topics, such as regular expressions, networking programming with sockets, multithreading, GUI development, Web/CGI programming and extending Python in C. This edition reflects major enhancements in the Python 2.x series, including 2.6 and tips for migrating to 3. It contains new chapters on database and Internet client programming, plus coverage of many new topics, including new-style classes, Java and Jython, Microsoft Office (Win32 COM Client) programming, and much more. Learn professional Python style, best practices, and good programming habits Gain a deep understanding of Python's objects and memory model as well as its OOP features, including those found in Python's new-style classes Build more effective Web, CGI, Internet, and network and other client/server applications Learn how to develop your own GUI applications using Tkinter and other toolkits available for Python Improve the performance of your Python applications by writing extensions in C and other languages, or enhance I/O-bound applications by using multithreading Learn about Python's database API and how to use a variety of database systems with Python, including MySQL, Postgres, and SQLite Features appendices on Python 2.6 & 3, including tips on migrating to the next generation! Core Python Programming delivers Systematic, expert coverage of Python's core features Powerful insights for developing complex applications Easy-to-use tables and charts detailing Python modules, operators, functions, and methods Dozens of professional-quality code examples, from quick snippets to full-fledged applications
…
Cover unavailable
44
Python in a Nutshell
Alex Martelli
4.3
Demonstrates the programming language's strength as a Web development tool, covering syntax, data types, built-ins, the Python standard module library, and real world examples
Cover unavailable
45
A Smarter Way to Learn Python: Learn It Faster. Remember It Longer.
Mark Myers
4.3
I wasn't smart enough to learn a computer language like Python-until I got smart about how to learn it.I was smart enough to earn an honors degree in philosophy from Harvard, but an aptitude test told me to avoid computer programming. I'm sure it was right. But then I designed a learning system for myself that quadrupled my aptitude for learning computer languages. It worked so well for me that I've used it to teach coding to grandmothers, cab drivers, musicians, and 50,000 other newbies.
"Mark Myers' method of getting what can be...difficult information into a format that makes it exponentially easier to consume, truly understand, and synthesize into real-world application is beyond anything I've encountered before." -Amazon reviewer Jason A. Ruby reviewing my first book, A Smarter Way to Learn JavaScript
Quadruple your learning ability.
Washington University research shows that a key teaching method I use-interactive recall practice-improves learning performance 400 percent.
"I don't feel lost and I don't feel that I am forgetting things as I go along." -Amazon reviewer Leonie M. reviewing my second book, A Smarter Way to Learn HTML and CSS
Understanding is easy. Remembering is hard.
Computer languages are not inherently hard to understand, even for non-techies. Remembering is the problem. If you remember all of Chapter 1 through Chapter 10, you'll understand Chapter 11. But you don't remember. Though you read and read, most of it doesn't stick. You don't have a solid foundation to build on. Halfway through the book, it all collapses. That's when most people give up.
"I've signed up to a few sites like Udemy, Codecademy, FreeCodeCamp, Lynda, YouTube videos, even searched on Coursera but nothing seemed to work for me. This book takes only 10 minutes each chapter and after that, you can exercise what you've just learned right away!" -Amazon reviewer Constanza Morales reviewing my first book, A Smarter Way to Learn JavaScript
Interactive exercises make it stick.
Research shows that you will remember everything if you're repeatedly asked to recall it. That's the beauty of flash cards. But technology offers an even better way to make information stick. With my book you get almost a thousand interactive exercises-they're free online-that embed the whole book in your memory. Algorithms check your work to make sure you know what you think you know. When you stumble, you do the exercise again. You keep trying until you know the chapter cold.
"Not only do the exercises make learning fun, they reinforce the material right away so it sinks in deeper." -Amazon reviewer Timothy B. Miller reviewing my second book, A Smarter Way to Learn HTML and CSS
You won't get bored or sleepy.
The exercises keep you engaged, give you extra practice where you're shaky, and prepare you for each next step. Every lesson is built on top of a solid foundation that you and I have carefully constructed. Each individual step is small. But all the little steps add up to real knowledge-knowledge that you retain.
I finally feel like I KNOW it and won't need to look up the syntax each time..." -Amazon reviewer J. Caritas reviewing my third book, A Smarter Way to Learn jQuery
Really, it ain't that hard.
Reviewing my books on Amazon, readers who've struggled with programming concepts like functions, loops, and scope write, "I had no idea these things were so simple!"
..".makes it much easier to suddenly realize a concept that seemed abstract and too hard to wrap your head around is suddenly not complicated at all." - Amazon reviewer IMHO reviewing A Smarter Way to Learn JavaScript
You don't need to be a computer genius to learn Python. You just need to be smart about how you
…
Cover unavailable
46
The Hitchhiker's Guide to Python: Best Practices for Development
Kenneth Reitz, Tanya Schlusser
4.3
The Hitchhiker's Guide to Python takes the journeyman Pythonista to true expertise. More than any other language, Python was created with the philosophy of simplicity and parsimony. Now 25 years old, Python has become the primary or secondary language (after SQL) for many business users. With popularity comes diversity--and possibly dilution.
This guide, collaboratively written by over a hundred members of the Python community, describes best practices currently used by package and application developers. Unlike other books for this audience, The Hitchhiker's Guide is light on reusable code and heavier on design philosophy, directing the reader to excellent sources that already exist.
…
Cover unavailable
47
Grokking Algorithms An Illustrated Guide For Programmers and Other Curious People
Aditya Bhargava
4.2
An algorithm is nothing more than a step-by-step procedure for solving a problem. The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.
Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply common algorithms to the practical problems you face in day-to-day life as a programmer. You'll start with problems like sorting and searching. As you build up your skills in thinking algorithmically, you'll tackle more complex concerns such as data compression or artificial intelligence. Whether you're writing business software, video games, mobile apps, or system utilities, you'll learn algorithmic techniques for solving problems that you thought were out of your grasp. For example, you'll be able to: Write a spell checker using graph algorithms Understand how data compression works using Huffman coding Identify problems that take too long to solve with naive algorithms, and attack them with algorithms that give you an approximate answer instead Each carefully-presented example includes helpful diagrams and fully-annotated code samples in Python. By the end of this book, you will know some of the most widely applicable algorithms as well as how and when to use them.
…
Cover unavailable
48
Code: The Hidden Language of Computer Hardware and Software
Charles Petzold
4.2
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.
Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of computers and other smart machines.
It’s a cleverly illustrated and eminently comprehensible story—and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.
…
Recommended by Ana Bell.
Ana Bell
It gets you to use your imagination to virtually build a computer. It’s easy to read, you can lie down on the couch and enjoy it—it’s not so much of a textbook. It demystifies the magic of a computer and what it is. [source]
Cover unavailable
49
Clean Code: A Handbook of Agile Software Craftsmanship
Robert C. Martin
4.2
Even bad code can function. But if code isn t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn t have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and make you a better programmer but only if you work at it. What kind of work will you be doing? You ll be reading code lots of code. And you will be challenged to think about what s right about that code, and what s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft. Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and smells gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code. Readers will come away from this book understanding
How to tell the difference between good and bad code How to write good code and how to transform bad code into good code How to create good names, good functions, good objects, and good classes How to format code for maximum readability How to implement complete error handling without obscuring code logic How to unit test and practice test-driven development This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code. "
…
Recommended by Ana Bell.
Ana Bell
This book is going to show you how to write code that is readable by yourself in the future, or by somebody else. You can sit on the couch and read it; you don’t need to code. You can actually enjoy it if you don’t know how to program at all. [source]
Cover unavailable
50
Learn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code
Zed Shaw
4.2
You Will Learn Python 3! Zed Shaw has perfected the world's best system for learning Python 3. Follow it and you will succeed--just like the millions of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Python 3 the Hard Way, you'll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn how a computer works; what good programs look like; and how to read, write, and think about code. Zed then teaches you even more in 5+ hours of video where he shows you how to break, fix, and debug your code--live, as he's doing the exercises.
Install a complete Python environment Organize and write code Fix and break code Basic mathematics Variables Strings and text Interact with users Work with files Looping and logic Data structures using lists and dictionaries Program design Object-oriented programming Inheritance and composition Modules, classes, and objects Python packaging Automated testing Basic game development Basic web development It'll be hard at first. But soon, you'll just get it--and that will feel great! This course will reward you for every minute you put into it. Soon, you'll know one of the world's most powerful, popular programming languages. You'll be a Python programmer. This Book Is Perfect For Total beginners with zero programming experience Junior developers who know one or two languages Returning professionals who haven't written code in years Seasoned professionals looking for a fast, simple, crash course in Python 3 Normal 0 false false false EN-US X-NONE X-NONE
…
Cover unavailable
51
Elements of Programming Interviews in Python: The Insiders' Guide
Adnan Aziz, Tsung-Hsien Lee, et al.
4.2
This is the Python version of our book. See the website for links to the C++ and Java version.Have you ever...
Wanted to work at an exciting futuristic company? Struggled with an interview problem thatcould have been solved in 15 minutes? Wished you could study real-world computing problems? If so, you need to read Elements of Programming Interviews (EPI).
EPI is your comprehensive guide to interviewing for software development roles.
The core of EPI is a collection of over 250 problems with detailed solutions. The problems are representative of interview questions asked at leading software companies. The problems are illustrated with 200 figures, 300 tested programs, and 150 additional variants.
The book begins with a summary of the nontechnical aspects of interviewing, such as strategies for a great interview, common mistakes, perspectives from the other side of the table, tips on negotiating the best offer, and a guide to the best ways to use EPI. We also provide a summary of data structures, algorithms, and problem solving patterns.
Coding problems are presented through a series of chapters on basic and advanced data structures, searching, sorting, algorithm design principles, and concurrency. Each chapter stars with a brief introduction, a case study, top tips, and a review of the most important library methods. This is followed by a broad and thought-provoking set of problems.
A practical, fun approach to computer science fundamentals, as seen through the lens of common programming interview questions. Jeff Atwood/Co-founder, Stack Overflow and Discourse
…
Cover unavailable
52
Programming Collective Intelligence: Building Smart Web 2.0 Applications
Toby Segaran
4.2
Want to tap the power behind search rankings, product recommendations, social bookmarking, and online matchmaking? This fascinating book demonstrates how you can build Web 2.0 applications to mine the enormous amount of data created by people on the Internet. With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you've found it.
Programming Collective Intelligence takes you into the world of machine learning and statistics, and explains how to draw conclusions about user experience, marketing, personal tastes, and human behavior in general -- all from information that you and others collect every day. Each algorithm is described clearly and concisely with code that can immediately be used on your web site, blog, Wiki, or specialized application. This book explains:
Collaborative filtering techniques that enable online retailers to recommend products or media Methods of clustering to detect groups of similar items in a large dataset Search engine features -- crawlers, indexers, query engines, and the PageRank algorithm Optimization algorithms that search millions of possible solutions to a problem and choose the best one Bayesian filtering, used in spam filters for classifying documents based on word types and other features Using decision trees not only to make predictions, but to model the way decisions are made Predicting numerical values rather than classifications to build price models Support vector machines to match people in online dating sites Non-negative matrix factorization to find the independent features in a dataset Evolving intelligence for problem solving -- how a computer develops its skill by improving its own code the more it plays a game Each chapter includes exercises for extending the algorithms to make them more powerful. Go beyond simple database-backed applications and put the wealth of Internet data to work for you.
"Bravo! I cannot think of a better way for a developer to first learn these algorithms and methods, nor can I think of a better way for me (an old AI dog) to reinvigorate my knowledge of the details." -- Dan Russell, Google
"Toby's book does a great job of breaking down the complex subject matter of machine-learning algorithms into practical, easy-to-understand examples that can be directly applied to analysis of social interaction across the Web today. If I had this book two years ago, it would have saved precious time going down some fruitless paths." -- Tim Wolters, CTO, Collective Intellect
…
Cover unavailable
53
Building Machine Learning Systems with Python
Willi Richert, Luis Pedro Coelho
4.2
Cover unavailable
54
Make Your Own Neural Network
Tariq Rashid
4.2
Cover unavailable
55
Learn Python in One Day and Learn It Well (2nd Edition): Python for Beginners with Hands-On Project. the Only Book You Need to Start Coding in Python Immediately
Jamie Chan
4.2
(2nd Edition: Covers Object Oriented Programming) Master Python Programming with a unique Hands-On Project
Have you always wanted to learn computer programming but are afraid it'll be too difficult for you? Or perhaps you know other programming languages but are interested in learning the Python language fast?
This book is for you. You no longer have to waste your time and money learning Python from lengthy books, expensive online courses or complicated Python tutorials.
What this book offers...
Python for Beginners Complex concepts are broken down into simple steps to ensure that you can easily master the Python language even if you have never coded before.
Carefully Chosen Python Examples Examples are carefully chosen to illustrate all concepts. In addition, the output for all examples are provided immediately so you do not have to wait till you have access to your computer to test the examples.
Careful selection of topics Topics are carefully selected to give you a broad exposure to Python, while not overwhelming you with information overload. These topics include object-oriented programming concepts, error handling techniques, file handling techniques and more.
Learn The Python Programming Language Fast Concepts are presented in a "to-the-point" style to cater to the busy individual. With this book, you can learn Python in just one day and start coding immediately.
How is this book different...
The best way to learn Python is by doing. This book includes a complete project at the end of the book that requires the application of all the concepts taught previously. Working through the project will not only give you an immense sense of achievement, it"ll also help you retain the knowledge and master the language.
Are you ready to dip your toes into the exciting world of Python coding?
With the first edition of this book being a #1 best-selling programming ebook on Amazon for more than a year, you can rest assured that this new and improved edition is the perfect book for you to learn the Python programming language fast.
Click the "Add to Cart" button to buy it now.
What you'll learn:
What is Python? What software you need to code and run Python programs? What are variables? What are the common data types in Python? What are Lists and Tuples? How to format strings How to accept user inputs and display outputs How to control the flow of program with loops How to handle errors and exceptions What are functions and modules? How to define your own functions and modules How to work with external files What are objects and classes How to write your own class What is inheritance What are properties What is name mangling .. and more...
Finally, you'll be guided through a hands-on project that requires the application of all the topics covered.
Click the "Add to Cart" button now to start learning Python. Learn it fast and learn it well.
…
Cover unavailable
56
The Python Standard Library by Example
Doug Hellmann
4.2
"Hellmann's writing has become an indispensable resource for me and many others as it fills a critical gap in Python Documentation with examples." - Jesse Noller, Python Core Developer and PSF Board Member Master the Powerful Python Standard Library through Real Code Examples The Python Standard Library contains hundreds of modules for interacting with the operating system, interpreter, and Internet-all extensively tested and ready to jump-start your application development. The Python Standard Library by Example (2 Volume Set) introduces virtually every important area of the Python 2.7 library through concise, stand-alone source code/output examples, designed for easy learning and reuse. Building on his popular Python Module of the Week blog series, author and Python expert Doug Hellmann focuses on "showing" not "telling." He explains code behavior through downloadable examples that fully demonstrate each feature. You'll find practical code for working with text, data types, algorithms, math, file systems, networking, the Internet, XML, email, cryptography, concurrency, runtime and language services, and much more. Each section fully covers one module, and links to valuable additional resources, making this book an ideal tutorial and reference. Coverage includes Manipulating text with string, textwrap, re, and difflib Implementing data structures: collections, array, queue, struct, copy, and more Reading, writing, and manipulating files and directories Regular expression pattern matching Exchanging data and providing for persistence Archiving and data compression Managing processes and threads Using application "building blocks" parsing command-line options, prompting for passwords, scheduling events, and logging Testing, debugging, and compilation Controlling runtime configuration Using module and package utilities If you're new to Python, this book will quickly give you access to a whole new world of functionality. If you've worked with Python before, you'll discover new, powerful solutions and better ways to use the modules you've already tried.
…
Cover unavailable
57
Two Scoops of Django: Best Practices for Django 1.8
Daniel Roy Greenfeld and Audrey Roy Greenfeld
4.2
This book is chock-full of material that will help you with your Django projects.
We’ll introduce you to various tips, tricks, patterns, code snippets, and techniques that we’ve picked up over the years.
Cover unavailable
58
Doing Math with Python
Amit Saha
4.2
In Doing Math with Python you'll learn to how to use the Python programming language as a tool to delve into math concepts. Python is easy to learn, and it's perfect for exploring topics like statistics, geometry, probability, and calculus. You’ll learn to write programs to find derivatives, solve equations graphically, manipulate algebraic expressions, even examine projectile motion.
Rather than crank through tedious calculations by hand, you'll learn how to use Python functions and modules to handle the number crunching while you focus on the principles behind the math. Exercises throughout teach fundamental programming concepts, like using functions, handling user input, and reading and manipulating data. As you learn to think computationally, you'll discover new ways to explore and think about math, and gain valuable programming skills that you can use to continue your study of math and computer science.
If you’re interested in math but have yet to dip into programming, you’ll find that Python makes it easy to go deeper into the subject—let Python handle the tedious work while you spend more time on the math.
…
Cover unavailable
59
The Hacker's Guide to Python
Julien Danjou
4.2
An indispensable collection of practical tips and real-world advice for tackling common Python problems and taking your code to the next level. Features interviews with high-profile Python developers who share their tips, tricks, best practices, and real-world advice gleaned from years of experience.
The Hacker's Guide to Python will teach you how to fine tune your Python code and give you a deeper understanding of how the language works under the hood. This essential guide distills years of Python experience into a handy collection of general advice and specific tips that will help you pick the right libraries, distribute your code correctly, build future-proof programs, and optimize your programs down to the bytecode.
Author Julien Danjou, an OpenStack contributor (the largest open source project written in Python) covers a swath of important areas like scaling, testing, and porting your code. You'll also learn directly from Python experts and get real-world (and time-saving) advice on topics like unit testing, packaging code, performances and optimizations, and designing APIs. Elevate your code and get seriously good at Python with The Hacker's Guide to Python!
…
Cover unavailable
60
Python Playground: Geeky Projects for the Curious Programmer
Mahesh Venkitachalam
4.2
Python is a powerful programming language that's easy to learn and fun to play with. But once you've gotten a handle on the basics, what do you do next?
Python Playground is a collection of imaginative programming projects that will inspire you to use Python to make art and music, build simulations of real-world phenomena, and interact with hardware like the Arduino and Raspberry Pi. You'll learn to use common Python tools and libraries like numpy, matplotlib, and pygame to do things like: -Generate Spirograph-like patterns using parametric equations and the turtle module -Create music on your computer by simulating frequency overtones -Translate graphical images into ASCII art -Write an autostereogram program that produces 3D images hidden beneath random patterns -Make realistic animations with OpenGL shaders by exploring particle systems, transparency, and billboarding techniques -Construct 3D visualizations using data from CT and MRI scans -Build a laser show that responds to music by hooking up your computer to an Arduino
Programming shouldn't be a chore. Have some solid, geeky fun with Python Playground.
The projects in this book are compatible with both Python 2 and 3.
…
Cover unavailable
61
Two Scoops of Django: Best Practices for Django 1.5
Daniel Greenfeld and Audrey Ro
4.2
We'll introduce you to various tips, tricks, patterns, code snippets, and techniques that we've picked up over the years.
This book is great for:
Beginners who have just finished the Django tutorial.
Developers with intermediate knowledge of Django who want to improve their Django projects.
Cover unavailable
62
Rapid GUI Programming with Python and Qt: The Definitive Guide to PyQt Programming
Mark Summerfield
4.2
The Insider's Best-Practice Guide to Rapid PyQt 4 GUI Development Whether you're building GUI prototypes or full-fledged cross-platform GUI applications with native look-and-feel, PyQt 4 is your fastest, easiest, most powerful solution. Qt expert Mark Summerfield has written the definitive best-practice guide to PyQt 4 development.
With Rapid GUI Programming with Python and Qt you'll learn how to build efficient GUI applications that run on all major operating systems, including Windows, Mac OS X, Linux, and many versions of Unix, using the same source code for all of them. Summerfield systematically introduces every core GUI development technique: from dialogs and windows to data handling; from events to printing; and more. Through the book's realistic examples you'll discover a completely new PyQt 4-based programming approach, as well as coverage of many new topics, from PyQt 4's rich text engine to advanced model/view and graphics/view programming. Every key concept is illuminated with realistic, downloadable examples--all tested on Windows, Mac OS X, and Linux with Python 2.5, Qt 4.2, and PyQt 4.2, and on Windows and Linux with Qt 4.3 and PyQt 4.3.
Coverge includes
Python basics for every PyQt developer: data types, data structures, control structures, classes, modules, and more Core PyQt GUI programming techniques: dialogs, main windows, and custom file formats Using Qt Designer to design user interfaces, and to implement and test dialogs, events, the Clipboard, and drag-and-drop Building custom widgets: Widget Style Sheets, composite widgets, subclassing, and more Making the most of Qt 4.2's new graphics/view architecture Connecting to databases, executing SQL queries, and using form and table views Advanced model/view programming: custom views, generic delegates, and more Implementing online help, internationalizing applications, and using PyQt's networking and multithreading facilities
…
Cover unavailable
63
Python Testing with Pytest: Simple, Rapid, Effective, and Scalable
Brian Okken
4.2
Do less work when testing your Python code, but be just as expressive, just as elegant, and just as readable. The pytest testing framework helps you write tests quickly and keep them readable and maintainable - with no boilerplate code. Using a robust yet simple fixture model, it's just as easy to write small tests with pytest as it is to scale up to complex functional testing for applications, packages, and libraries. This book shows you how.
For Python-based projects, pytest is the undeniable choice to test your code if you're looking for a full-featured, API-independent, flexible, and extensible testing framework. With a full-bodied fixture model that is unmatched in any other tool, the pytest framework gives you powerful features such as assert rewriting and plug-in capability - with no boilerplate code.
With simple step-by-step instructions and sample code, this book gets you up to speed quickly on this easy-to-learn and robust tool. Write short, maintainable tests that elegantly express what you're testing. Add powerful testing features and still speed up test times by distributing tests across multiple processors and running tests in parallel. Use the built-in assert statements to reduce false test failures by separating setup and test failures. Test error conditions and corner cases with expected exception testing, and use one test to run many test cases with parameterized testing. Extend pytest with plugins, connect it to continuous integration systems, and use it in tandem with tox, mock, coverage, unittest, and doctest.
Write simple, maintainable tests that elegantly express what you're testing and why.
What You Need:
The examples in this book are written using Python 3.6 and pytest 3.0. However, pytest 3.0 supports Python 2.6, 2.7, and Python 3.3-3.6.
…
Cover unavailable
64
Impractical Python Projects: Playful Programming Activities to Make You Smarter
Lee Vaughan
4.2
Impractical Python Projects is a collection of fun and educational projects designed to entertain programmers while enhancing their Python skills. It picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you'll use every day. And to keep things interesting, each project includes a zany twist featuring historical incidents, pop culture references, and literary allusions.
You'll flex your problem-solving skills and employ Python's many useful libraries to do things like: - Help James Bond crack a high-tech safe with a hill-climbing algorithm - Write haiku poems using Markov Chain Analysis - Use genetic algorithms to breed a race of gigantic rats - Crack the world's most successful military cipher using cryptanalysis - Derive the anagram, "I am Lord Voldemort" using linguistical sieves - Plan your parents' secure retirement with Monte Carlo simulation - Save the sorceress Zatanna from a stabby death using palingrams - Model the Milky Way and calculate our odds of detecting alien civilizations - Help the world's smartest woman win the Monty Hall problem argument - Reveal Jupiter's Great Red Spot using optical stacking - Save the head of Mary, Queen of Scots with steganography - Foil corporate security with invisible electronic ink
Simulate volcanoes, map Mars, and more, all while gaining valuable experience using free modules like Tkinter, matplotlib, Cprofile, Pylint, Pygame, Pillow, and Python-Docx.
Whether you're looking to pick up some new Python skills or just need a pick-me-up, you'll find endless educational, geeky fun with Impractical Python Projects.
…
Cover unavailable
65
Deep Learning
Ian Goodfellow, Yoshua Bengio, et al.
4.2
An introduction to a broad range of topics in deep learning, covering mathematical and conceptual background, deep learning techniques used in industry, and research perspectives.
Deep learning is a form of machine learning that enables computers to learn from experience and understand the world in terms of a hierarchy of concepts. Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by building them out of simpler ones; a graph of these hierarchies would be many layers deep. This book introduces a broad range of topics in deep learning.
The text offers mathematical and conceptual background, covering relevant concepts in linear algebra, probability theory and information theory, numerical computation, and machine learning. It describes deep learning techniques used by practitioners in industry, including deep feedforward networks, regularization, optimization algorithms, convolutional networks, sequence modeling, and practical methodology; and it surveys such applications as natural language processing, speech recognition, computer vision, online recommendation systems, bioinformatics, and videogames. Finally, the book offers research perspectives, covering such theoretical topics as linear factor models, autoencoders, representation learning, structured probabilistic models, Monte Carlo methods, the partition function, approximate inference, and deep generative models.
Deep Learning can be used by undergraduate or graduate students planning careers in either industry or research, and by software engineers who want to begin using deep learning in their products or platforms. A website offers supplementary material for both readers and instructors.
Very clear exposition, does the math without getting lost in the details. Although many of the concepts of the introductory first 100 pages can be found elsewhere, they are presented with remarkable cut-to-the-chase clarity. [source]
Elon Musk and Facebook AI chief Yann LeCun have praised this textbook on one of software’s most promising frontiers. After its publication, Microsoft signed up coauthor Bengio, a pioneer in machine learning, as an adviser [source]
Cover unavailable
66
Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems
Aurélien Géron
4.2
Cover unavailable
67
Think Complexity: Complexity Science and Computational Modeling
Allen B. Downey
4.1
Expand your Python skills by working with data structures and algorithms in a refreshing context—through an eye-opening exploration of complexity science. Whether you’re an intermediate-level Python programmer or a student of computational modeling, you’ll delve into examples of complex systems through a series of exercises, case studies, and easy-to-understand explanations.
You’ll work with graphs, algorithm analysis, scale-free networks, and cellular automata, using advanced features that make Python such a powerful language. Ideal as a text for courses on Python programming and algorithms, Think Complexity will also help self-learners gain valuable experience with topics and ideas they might not encounter otherwise.
Work with NumPy arrays and SciPy methods, basic signal processing and Fast Fourier Transform, and hash tables Study abstract models of complex physical systems, including power laws, fractals and pink noise, and Turing machines Get starter code and solutions to help you re-implement and extend original experiments in complexity Explore the philosophy of science, including the nature of scientific laws, theory choice, realism and instrumentalism, and other topics Examine case studies of complex systems submitted by students and readers
…
Cover unavailable
68
The Self-Taught Programmer: The Definitive Guide to Programming Professionally
Cory Althoff
4.1
I am a self-taught programmer. After a year of self-study, I learned to program well enough to land a job as a software engineer II at eBay. Once I got there, I realized I was severely under-prepared. I was overwhelmed by the amount of things I needed to know but hadn't learned yet. My journey learning to program, and my experience at my first job as a software engineer were the inspiration for this book.
This book is not just about learning to program; although you will learn to code. If you want to program professionally, it is not enough to learn to code; that is why, in addition to helping you learn to program, I also cover the rest of the things you need to know to program professionally that classes and books don't teach you. "The Self-taught Programmer" is a roadmap, a guide to take you from writing your first Python program, to passing your first technical interview. I divided the book into five sections:
1. Start to program in Python 3 and build your first program.
2. Learn Object-oriented programming and create a powerful Python program to get you hooked.
3. Learn to use tools like Git, Bash, and regular expressions. Then use your new coding skills to build a web scraper.
4. Study Computer Science fundamentals like data structures and algorithms.
5. Finish with best coding practices, tips for working with a team, and advice on landing a programming job.
You CAN learn to program professionally. The path is there. Will you take it?
…
Cover unavailable
69
Effective Python: 90 Specific Ways to Write Better Python
Brett Slatkin
4.1
Updated and Expanded for Python 3
It's easy to start developing programs with Python, which is why the language is so popular. However, Python's unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up.
This second edition of Effective Python will help you master a truly "Pythonic" approach to programming, harnessing Python's full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyers' best-selling Effective C++, Brett Slatkin brings together 90 Python best practices, tips, and shortcuts, and explains them with realistic code examples so that you can embrace Python with confidence.
Drawing on years of experience building Python infrastructure at Google, Slatkin uncovers little-known quirks and idioms that powerfully impact code behavior and performance. You'll understand the best way to accomplish key tasks so you can write code that's easier to understand, maintain, and improve. In addition to even more advice, this new edition substantially revises all items from the first edition to reflect how best practices have evolved.
Key features include 30 new actionable guidelines for all major areas of Python Detailed explanations and examples of statements, expressions, and built-in types Best practices for writing functions that clarify intention, promote reuse, and avoid bugs Better techniques and idioms for using comprehensions and generator functions Coverage of how to accurately express behaviors with classes and interfaces Guidance on how to avoid pitfalls with metaclasses and dynamic attributes More efficient and clear approaches to concurrency and parallelism Solutions for optimizing and hardening to maximize performance and quality Techniques and built-in modules that aid in debugging and testing Tools and best practices for collaborative development Effective Python will prepare growing programmers to make a big impact using Python.
…
Cover unavailable
70
Core Python Applications Programming
Wesley J Chun
4.1
Already know Python but want to learn more? A lot more? Dive into a variety of topics used in practice for real-world applications. Covers regular expressions, Internet/network programming, GUIs, SQL/databases/ORMs, threading, and Web development. Learn about contemporary development trends such as Google+, Twitter, MongoDB, OAuth, Python 3 migration, and Java/Jython. Presents brand new material on Django, Google App Engine, CSV/JSON/XML, and Microsoft Office. Includes Python 2 and 3 code samples to get you started right away! Provides code snippets, interactive examples, and practical exercises to help build your Python skills. The Complete Developer's Guide to Python Python is an agile, robust, and expressive programming language that continues to build momentum. It combines the power of compiled languages with the simplicity and rapid development of scripting languages. In Core Python Applications Programming, Third Edition, leading Python developer and corporate trainer Wesley Chun helps you take your Python knowledge to the next level. This book has everything you need to become a versatile Python developer. You will be introduced to multiple areas of application development and gain knowledge that can be immediately applied to projects, and you will find code samples in both Python 2 and 3, including migration tips if that's on your roadmap too. Some snippets will even run unmodified on 2.x or 3.x. Learn professional Python style, best practices, and good programming habits Build clients and servers using TCP, UDP, XML-RPC, and be exposed to higher-level libraries like SocketServer and Twisted Develop GUI applications using Tkinter and other available toolkits Improve application performance by writing extensions in C/C++, or enhance I/O-bound code with multithreading Discover SQL and relational databases, ORMs, and even non-relational (NonSQL) databases like MongoDB Learn the basics of Web programming, including Web clients and servers, plus CGI and WSGI Expose yourself to regular expressions and powerful text processing tools for creating and parsing CSV, JSON, and XML data Interface with popular Microsoft Office applications such as Excel, PowerPoint, and Outlook using COM client programming Dive deeper into Web development with the Django framework and cloud computing with Google App Engine Explore Java programming with Jython, the way to run Python code on the JVM Connect to Web services Yahoo! Finance to get stock quotes, or Yahoo! Mail, Gmail, and others to download or send e-mail
Jump into the social media craze by learning how to connect to the Twitter and Google+ networks Core Python Applications Programming, Third Edition, delivers Broad coverage of a variety of areas of development used in real-world applications today Powerful insights into current and best practices for the intermediate Python programmer Dozens of code examples, from quick snippets to full-fledged applications A variety of exercises at the end of every chapter to help hammer the concepts home
…
Cover unavailable
71
Two Scoops of Django: Best Practices for Django 1.6
Daniel Greenfeld, Audrey Roy
4.1
Cover unavailable
72
The Complete Monty Python's Flying Circus: All the Words: Volume 1
Graham Chapman, Eric Idle, Terry Gilliam, Terry Jones, John Cleese, Michael Palin
4.1
The complete scripts from the four Monty Python series, first shown on BBC television between 1969 and 1974, have been collected in two companion volumes.
Characters' names, often not spoken, are given as in the original scripts, along with the names of the actual performer added on their first appearance in each sketch.
This first volume contains twenty-three classic episodes, featuring some of the most entertaining writing to have gone into television anywhere. The minister of silly walks, the dead parrot, banter in a cheese shop - here is every silly, satirical skit, every snide insult, every saucy aside.
…
Cover unavailable
73
Classic Computer Science Problems in Python
David Kopec
4.1
Summary
Classic Computer Science Problems in Python deepens your knowledge of problem-solving techniques from the realm of computer science by challenging you with time-tested scenarios, exercises, and algorithms. As you work through examples in search, clustering, graphs, and more, you'll remember important things you've forgotten and discover classic solutions to your "new" problems!
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
Computer science problems that seem new or unique are often rooted in classic algorithms, coding techniques, and engineering principles. And classic approaches are still the best way to solve them! Understanding these techniques in Python expands your potential for success in web development, data munging, machine learning, and more.
About the Book
Classic Computer Science Problems in Python sharpens your CS problem-solving skills with time-tested scenarios, exercises, and algorithms, using Python. You'll tackle dozens of coding challenges, ranging from simple tasks like binary search algorithms to clustering data using k-means. You'll especially enjoy the feeling of satisfaction as you crack problems that connect computer science to the real-world concerns of apps, data, performance, and even nailing your next job interview!
What's Inside Search algorithms Common techniques for graphs Neural networks Genetic algorithms Adversarial search Uses type hints throughout Covers Python 3.7
About the Reader
For intermediate Python programmers.
About the Author
David Kopec is an assistant professor of Computer Science and Innovation at Champlain College in Burlington, Vermont. He is the author of Dart for Absolute Beginners (Apress, 2014) and Classic Computer Science Problems in Swift (Manning, 2018).
Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser
4.1
Based on the authors' market leading data structures books in Java and C++, this book offers a comprehensive, definitive introduction to data structures in Python by authoritative authors. Data Structures and Algorithms in Python is the first authoritative object-oriented book available for Python data structures. Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and Algorithms in C++.
Begins by discussing Python's conceptually simple syntax, which allows for a greater focus on concepts. Employs a consistent object-oriented viewpoint throughout the text. Presents each data structure using ADTs and their respective implementations and introduces important design patterns as a means to organize those implementations into classes, methods, and objects. Provides a thorough discussion on the analysis and design of fundamental data structures. Includes many helpful Python code examples, with source code provided on the website. Uses illustrations to present data structures and algorithms, as well as their analysis, in a clear, visual manner. Provides hundreds of exercises that promote creativity, help readers learn how to think like programmers, and reinforce important concepts. Contains many Python-code and pseudo-code fragments, and hundreds of exercises, which are divided into roughly 40% reinforcement exercises, 40% creativity exercises, and 20% programming projects.
…
Cover unavailable
75
Starting Out with Python
Tony Gaddis
4.1
Cover unavailable
76
Foundations of Python Network Programming
John Goerzen
4.1
To guide readers through the new scripting language, Python, this book discusses every aspect of client and server programming. And as Python begins to replace Perl as a favorite programming language, this book will benefit scripters and serious application developers who want a feature-rich, yet simple language, for deploying their products.
The text explains multitasking network servers using several models, including forking, threading, and non-blocking sockets. Furthermore, the extensive examples demonstrate important concepts and practices, and provide a cadre of fully-functioning stand alone programs. Readers may even use the provided examples as building blocks to create their own software.
…
Cover unavailable
77
Python Algorithms: Mastering Basic Algorithms in the Python Language
Magnus Lie Hetland
4.1
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques.
The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner. The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs. Well-known algorithms and data structures that are built into the Python language are explained, and the user is shown how to implement and evaluate others himself.
…
Cover unavailable
78
The Definitive Guide to Django: Web Development Done Right
Jacob Kaplan-Moss, Adrian Holovaty
4.1
Django, the Pythonbased equivalent to the Ruby on Rails web development framework, is hottest topics in web development. In "The Definitive Guide to Django: Web Development Done Right," Adrian Holovaty, one of Django's creators, and Django lead developer Jacob KaplanMoss show you how they use this framework to create awardwinning web sites. Over the course of three parts, they guide you through the creation of a web application reminiscent of chicagocrime.org.
The first part of the book introduces Django fundamentals like installation and configuration. You'll learn about creating the components that power a Django-driven web site. The second part delves into the more sophisticated features of Django, like outputting nonHTML content (such as RSS feeds and PDFs), plus caching and user management. The third part serves as a detailed reference to Django's many configuration options and commands. The book even includes seven appendices for looking up configurations options and commands. In all, this book provides the ultimate tutorial and reference to the popular Django framework. What you'll learnThe first half of this book explains in-depth how to build web applications using Django including the basics of dynamic web pages, the Django templating system interacting with databases, and web forms. The second half of this book discusses higher-level concepts such as caching, security, and how to deploy Django. The appendices form a reference for the commands and configurations available in Django. Who this book is for
Anyone who wants to use the powerful Django framework to build dynamic web sites quickly and easily! "
…
Cover unavailable
79
Hacking Secret Ciphers with Python
Al Sweigar
4.1
Hacking Secret Ciphers with Python teaches complete beginners how to program in the Python programming language. The book features the source code to several ciphers and hacking programs for these ciphers. The programs include the Caesar cipher, transposition cipher, simple substitution cipher, multiplicative & affine ciphers, Vigenere cipher, and hacking programs for each of these ciphers. The final chapters cover the modern RSA cipher and public key cryptography.
The full book can be found online here: https://inventwithpython.com/hacking/
…
Cover unavailable
80
Python Programming for the Absolute Beginner
Michael Dawson
4.1
Description
If you are new to programming with Python and are looking for a solid introduction, this is the book for you. Developed by computer science instructors, books in the For the absolute beginner series teach the principles of programming through simple game creation. You will acquire the skills that you need for more practical Python programming applications and you will learn how these skills can be put to use in real-world scenarios. Best of all, by the time you finish this book you will be able to apply the basic principles you've learned to the next programming language you tackle.
Features
Fun approach to a difficult topic
Readers will create games with Python as they learn the fundamentals of this programming language
The CD will include games that readers can cut and paste into their own Web site
The author provides challenges at the end of chapters to push readers to program on their own.
…
Cover unavailable
81
Writing Idiomatic Python 2.7.3
Jeff Knupp
4.1
The "Writing Idiomatic Python" book is finally here! Chock full of code samples, you'll learn the "Pythonic" way to accomplish common tasks. Each idiom comes with a detailed description, example code showing the "wrong" way to do it, and code for the idiomatic, "Pythonic" alternative. *This version of the book is for Python 2.7.3+. There is also a Python 3.3+ version available.* "Writing Idiomatic Python" contains the most common and important Python idioms in a format that maximizes identification and understanding. Each idiom is presented as a recommendation to write some commonly used piece of code. It is followed by an explanation of why the idiom is important. It also contains two code samples: the "Harmful" way to write it and the "Idiomatic" way. • The "Harmful" way helps you identify the idiom in your own code. • The "Idiomatic" way shows you how to easily translate that code into idiomatic Python. This book is perfect for you: • If you're coming to Python from another programming language • If you're learning Python as a first programming language • If you're looking to increase the readability, maintainability, and correctness of your Python code What is "Idiomatic" Python? Every programming language has its own idioms. Programming language idioms are nothing more than the generally accepted way of writing a certain piece of code. Consistently writing idiomatic code has a number of important benefits: • Others can read and understand your code easily • Others can maintain and enhance your code with minimal effort • Your code will contain fewer bugs • Your code will teach others to write correct code without any effort on your part
…
Cover unavailable
82
Python in Practice: Create Better Programs Using Concurrency, Libraries, and Patterns
Mark Summerfield
4.1
Winner of the 2014 Jolt Award for "Best Book" "Whether you are an experienced programmer or are starting your career, Python in Practice is full of valuable advice and example to help you improve your craft by thinking about problems from different perspectives, introducing tools, and detailing techniques to create more effective solutions." --Doug Hellmann, Senior Developer, DreamHost If you're an experienced Python programmer, Python in Practice will help you improve the quality, reliability, speed, maintainability, and usability of all your Python programs. Mark Summerfield focuses on four key themes: design patterns for coding elegance, faster processing through concurrency and compiled Python (Cython), high-level networking, and graphics. He identifies well-proven design patterns that are useful in Python, illuminates them with expert-quality code, and explains why some object-oriented design patterns are irrelevant to Python. He also explodes several counterproductive myths about Python programming--showing, for example, how Python can take full advantage of multicore hardware. All examples, including three complete case studies, have been tested with Python 3.3 (and, where possible, Python 3.2 and 3.1) and crafted to maintain compatibility with future Python 3.x versions. All code has been tested on Linux, and most code has also been tested on OS X and Windows. All code may be downloaded at www.qtrac.eu/pipbook.html. Coverage includes Leveraging Python's most effective creational, structural, and behavioral design patterns Supporting concurrency with Python's multiprocessing, threading, and concurrent.futures modules Avoiding concurrency problems using thread-safe queues and futures rather than fragile locks Simplifying networking with high-level modules, including xmlrpclib and RPyC Accelerating Python code with Cython, C-based Python modules, profiling, and other techniques Creating modern-looking GUI applications with Tkinter Leveraging today's powerful graphics hardware via the OpenGL API using pyglet and PyOpenGL
…
Cover unavailable
83
Programming in Python 3: A Complete Introduction to the Python Language
Mark Summerfield
4.1
The author demonstrates how to write code that takes full advantage of Python 3's features and idioms. It brings together all the knowledge needed to write any program, use any standard or third-party Python 3 library, and create new library modules of your own.
Cover unavailable
84
Pro Django
Marty Alchin
4.1
Django is the leading Python web application development framework. Learn how to leverage the Django web framework to its full potential in this advanced tutorial and reference. Endorsed by Django, Pro Django more or less picks up where The Definitive Guide to Django left off and examines in greater detail the unusual and complex problems that Python web application developers can face and how to solve them.
Provides in-depth information about advanced tools and techniques available in every Django installation Runs the gamut from the theory of Django's internal operations to actual code that solves real-world problems for high-volume environments Goes above and beyond other books, leaving the basics behind Shows how Django can do things even its core developers never dreamed possible
…
Cover unavailable
85
How to Make Mistakes in Python
Aaron Kha
4.0
Even the best programmers make mistakes, and experienced programmer Mike Pirnat has made his share during 15+ years with Python. Some have been simple and silly; others were embarrassing and downright costly. In this O’Reilly report, he dissects some of his most memorable blunders, peeling them back layer-by-layer to reveal just what went wrong.
Cover unavailable
86
The Hundred-Page Machine Learning Book
Andriy Burkov
4.0
WARNING! To avoid buying counterfeit on Amazon, click on "See All Buying Options" and choose "Amazon.com" and not a third-party seller.
Concise and to the point — the book can be read during a week. During that week, you will learn almost everything modern machine learning has to offer. The author and other practitioners have spent years learning these concepts.
Companion wiki — the book has a continuously updated wiki that extends some book chapters with additional information: Q&A, code snippets, further reading, tools, and other relevant resources.
Flexible price and formats — choose from a variety of formats and price options: Kindle, hardcover, paperback, EPUB, PDF. If you buy an EPUB or a PDF, you decide the price you pay!
Read first, buy later — download book chapters for free, read them and share with your friends and colleagues. Only if you liked the book or found it useful in your work, study or business, then buy it.
…
Recommended by Kirk Borne.
Kirk Borne
Recent top-selling books in #AI & #MachineLearning: https://t.co/Ij9I7SzR4d ————— #BigData #DataScience #DataMining #Algorithms #PredictiveAnalytics #Python ————— ...in the TOP 10: 1)The Hundred-Page ML Book: https://t.co/dQ7nP6gwP0 2)Hands-on ML with...: https://t.co/Y0Iz3GbtGP https://t.co/72rAFN1FwW [source]
Cover unavailable
87
The Complete Monty Python's Flying Circus: All the Words, Vol. 2
Monty Python, Graham Chapman, Eric Idle, Terry Gilliam, Terry Jones
4.0
The complete scripts from the four Monty Python series, first shown on BBC television between 1969 and 1974, have been collected in two companion volumes.
Characters' names, often not spoken, are given as in the original scripts, along with the names of the actual performer added on their first appearance in each sketch.
This second volume contains twenty-two classic episodes, featuring some of the most entertaining writing to have gone into television anywhere. The minister of silly walks, the dead parrot, banter in a cheese shop - here is every silly, satirical skit, every snide insult, every saucy aside.
…
Cover unavailable
88
A Primer on Scientific Programming with Python
Hans Petter Langtangen
4.0
The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example- and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology, and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background, and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers, the reader will also learn how to solve mathematical problems, arising in various branches of science and engineering, with the aid of numerical methods and programming. By blending programming, mathematics and scientific applications, the book lays a solid foundation for practicing computational science.
…
Cover unavailable
89
Data Structures and Algorithmic Thinking with Python: Data Structure and Algorithmic Puzzles
DS Publishing
4.0
Table of Contents: goo.gl/VLEUca Sample Chapter: goo.gl/8AEcYk Source Code: goo.gl/L8Xxdt
It is the Python version of "Data Structures and Algorithms Made Easy".
The sample chapter should give you a very good idea of the quality and style of our book. In particular, be sure you are comfortable with the level and with our Python coding style.
This book focuses on giving solutions for complex problems in data structures and algorithm. It even provides multiple solutions for a single problem, thus familiarizing readers with different possible approaches to the same problem. "Data Structure and Algorithmic Thinking with Python" is designed to give a jumpstart to programmers, job hunters and those who are appearing for exams. All the code in this book are written in Python. It contains many programming puzzles that not only encourage analytical thinking, but also prepares readers for interviews. This book, with its focused and practical approach, can help readers quickly pick up the concepts and techniques for developing efficient and effective solutions to problems.
…
Cover unavailable
90
Python in easy steps
Mike McGrath
4.0
Python is a freely available programming language that makes solving a computer problem almost as easy as writing out one's thoughts about the solution. Python in Easy Steps covers everything the reader needs to know to start programming with Python. This easy-to-follow guide is the perfect companion for fast and productive learning. Designed to save time and guaranteed to give users value for their money, this successful series is written in simple, jargon-free style with helpful graphics. Each chapter takes readers through Python’s functions and uses step by step, and every page is packed with visual guides so that what users see in the book is exactly the same as what appears on their screens.
…
Cover unavailable
91
The Spirit of Python: Identify what constricts your life and kills your dreams
Jentezen Franklin
4.0
If it feels like your dreams and passions are suffocating and you don’t know why—you might be dealing with the spirit of python.In the natural world pythons have an interesting way of killing their prey. They constrict it until it can no longer breathe, literally suffocating the life out of its veins. In the spirit realm the python spirit acts in the same manner. It comes to put limits on you. It comes to quiet your voice and kill your dreams. It creeps into your life and, slowly but surely, suffocates your zeal for praising and worshiping God. New York Times best-selling author Jentezen Franklin is back with a message that will inspire you to break free and reclaim a life of passion, purpose, and praise. Based on some of his best-selling ministry products, The Spirit of Python helps you understand the strategies of this subtle destroyer, how it works, how to detect it, and how to break its hold from your life.
…
Cover unavailable
92
Python for Finance: Analyze Big Financial Data
Yves Hilpisch
4.0
The financial industry has adopted Python at a tremendous rate recently, with some of the largest investment banks and hedge funds using it to build core trading and risk management systems. This hands-on guide helps both developers and quantitative analysts get started with Python, and guides you through the most important aspects of using Python for quantitative finance.
Using practical examples through the book, author Yves Hilpisch also shows you how to develop a full-fledged framework for Monte Carlo simulation-based derivatives and risk analytics, based on a large, realistic case study. Much of the book uses interactive IPython Notebooks, with topics that include:
Fundamentals: Python data structures, NumPy array handling, time series analysis with pandas, visualization with matplotlib, high performance I/O operations with PyTables, date/time information handling, and selected best practices
Financial topics: mathematical techniques with NumPy, SciPy and SymPy such as regression and optimization; stochastics for Monte Carlo simulation, Value-at-Risk, and Credit-Value-at-Risk calculations; statistics for normality tests, mean-variance portfolio optimization, principal component analysis (PCA), and Bayesian regression
Special topics: performance Python for financial algorithms, such as vectorization and parallelization, integrating Python with Excel, and building financial applications based on Web technologies
…
Cover unavailable
93
Cython: A Guide for Python Programmers
Kurt W. Smith
4.0
Build software that combines Python's expressivity with the performance and control of C (and C++). It's possible with Cython, the compiler and hybrid programming language used by foundational packages such as NumPy, and prominent in projects including Pandas, h5py, and scikits-learn. In this practical guide, you'll learn how to use Cython to improve Python's performance--up to 3000x-- and to wrap C and C++ libraries in Python with ease.
Author Kurt Smith takes you through Cython's capabilities, with sample code and in-depth practice exercises. If you're just starting with Cython, or want to go deeper, you'll learn how this language is an essential part of any performance-oriented Python programmer's arsenal.
Use Cython's static typing to speed up Python code Gain hands-on experience using Cython features to boost your numeric-heavy Python Create new types with Cython--and see how fast object-oriented programming in Python can be Effectively organize Cython code into separate modules and packages without sacrificing performance Use Cython to give Pythonic interfaces to C and C++ libraries Optimize code with Cython's runtime and compile-time profiling tools Use Cython's prange function to parallelize loops transparently with OpenMP
…
Cover unavailable
94
Making Games with Python & Pygame
Al Sweigart
4.0
Making Games with Python & Pygame is a programming book that covers the Pygame game library for 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 license and can be downloaded in full for free from http: //inventwithpython.com/pygame This book was written to be understandable by kids as young as 10 to 12 years old, although it is great for anyone of any age who has some familiarity with Python.
…
Cover unavailable
95
Python High Performance
Gabriele Lanaro
4.0
Python is a versatile language that has found applications in many industries. The clean syntax, rich standard library, and vast selection of third-party libraries make Python a wildly popular language.
Python High Performance is a practical guide that shows how to leverage the power of both native and third-party Python libraries to build robust applications.
The book explains how to use various profilers to find performance bottlenecks and apply the correct algorithm to fix them. The reader will learn how to effectively use NumPy and Cython to speed up numerical code. The book explains concepts of concurrent programming and how to implement robust and responsive applications using Reactive programming. Readers will learn how to write code for parallel architectures using Tensorflow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark.
By the end of the book, readers will have learned to achieve performance and scale from their Python applications.
…
Cover unavailable
96
Programming the Raspberry Pi: Getting Started with Python
Simon Monk
4.0
An updated guide to programming your own Raspberry Pi projectsLearn to create inventive programs and fun games on your powerful Raspberry Pi--with no programming experience required. This practical book has been revised to fully cover the new Raspberry Pi 2, including upgrades to the Raspbian operating system. Discover how to configure hardware and software, write Python scripts, create user-friendly GUIs, and control external electronics. DIY projects include a hangman game, RGB LED controller, digital clock, and RasPiRobot complete with an ultrasonic rangefinder.
Updated for Raspberry Pi 2 Set up your Raspberry Pi and explore its features Navigate files, folders, and menus Write Python programs using the IDLE editor Use strings, lists, functions, and dictionaries Work with modules, classes, and methods Create user-friendly games using Pygame Build intuitive user interfaces with Tkinter Attach external electronics through the GPIO port Add powerful Web features to your projects
…
Cover unavailable
97
Hello World! Computer Programming for Kids and Other Beginners
Warren Sande, Carter Sande
4.0
"Computer programming is a powerful tool for children to 'learn learning,' that is, to learn the skills of thinking and problem-solving...Children who engage in programming transfer that kind of learning to other things."--Nicholas Negroponte, the man behind the One Laptop Per Child project that hopes to put a computer in the hands of every child on earth, January 2008
Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great place to start. Plus, programming is fun!
Hello World! provides a gentle but thorough introduction to the world of computer programming. It's written in language a 12-year-old can follow, but anyone who wants to learn how to program a computer can use it. Even adults. Written by Warren Sande and his son, Carter, and reviewed by professional educators, this book is kid-tested and parent-approved.
You don't need to know anything about programming to use the book. But you should know the basics of using a computer--e-mail, surfing the web, listening to music, and so forth. If you can start a program and save a file, you should have no trouble using this book.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
…
Cover unavailable
98
The Pythons Autobiography by The Pythons
The Pythons
4.0
Cover unavailable
99
Architecture Patterns with Python: How to Apply DDD, Ports and Adapters, and Enterprise Architecture Design Patterns in a Pythonic Way
Harry Percival, Bob Gregory
4.0
As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software architecture patterns such as hexagonal/clean architecture, event-driven architecture, and strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward.
With this practical guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity. Each pattern is illustrated with concrete examples in idiomatic Python that explain how to avoid some of the unnecessary verbosity of Java and C# syntax. You'll learn how to implement each of these patterns in a Pythonic way.
Architectural design patterns include:
Dependency inversion, and its links to ports and adapters (hexagonal/clean architecture) Domain-driven design's distinction between entities, value objects, and aggregates Repository and Unit of Work patterns for persistent storage Events, commands, and the message bus Command Query Responsibility Segregation (CQRS) Event-driven architecture and reactive microservices
…
Cover unavailable
100
Mastering Object-Oriented Python: Build powerful applications with reusable code using OOP design patterns and Python 3.7, 2nd Edition