
Key FeaturesLearn the fundamentals of programming with Python – one of the best languages ever createdDevelop a strong set of programming skills that you will be able to express in any situation, on every platform, thanks to Python's portabilityCreate outstanding applications of all kind, from websites to scripting, and from GUIs to data scienceBook DescriptionLearning Python has a dynamic and varied nature. It reads easily and lays a good foundation for those who are interested in digging deeper. It has a practical and example-oriented approach through which both the introductory and the advanced topics are explained. Starting with the fundamentals of programming and Python, it ends by exploring very different topics, like GUIs, web apps and data science. The book takes you all the way to creating a fully fledged application.The book begins by exploring the essentials of programming, data structures and teaches you how to manipulate them. It then moves on to controlling the flow of a program and writing reusable and error proof code. You will then explore different programming paradigms that will allow you to find the best approach to any situation, and also learn how to perform performance optimization as well as effective debugging. Throughout, the book steers you through the various types of applications, and it concludes with a complete mini website built upon all the concepts that you learned.What you will learnGet Python up and running on Windows, Mac, and Linux in no timeGrasp the fundamental concepts of coding, along with the basics of data structures and control flow.Write elegant, reusable, and efficient code in any situationUnderstand when to use the functional or the object oriented programming approachCreate bulletproof, reliable software by writing tests to support your codeExplore examples of GUIs, scripting, data science and web applicationsLearn to be independent, capable of fetching any resource you need, as well as dig deeperAbout the AuthorFabrizio Romano was born in Italy in 1975. He holds a master's degree in computer science engineering from the University of Padova. He is also a certified Scrum master.Before Python, he has worked with several other languages, such as C/C++, Java, PHP, and C#.In 2011, he moved to London and started working as a Python developer for Glasses Direct, one of Europe's leading online prescription glasses retailers.He then worked as a senior Python developer for TBG (now Sprinklr), one of the world's leading companies in social media advertising. At TBG, he and his team collaborated with Facebook and Twitter. They were the first in the world to get access to the Twitter advertising API. He wrote the code that published the first geo-narrowcasted promoted tweet in the world using the API.He currently works as a senior platform developer at Student.com, a company that is revolutionizing the way international students find their perfect home all around the world.He has delivered talks on Teaching Python and TDD with Python at the last two editions of EuroPython and at Skillsmatter in London.Table of ContentsIntroduction and First Steps – Take a Deep BreathBuilt-in Data TypesIterating and Making DecisionsFunctions, the Building Blocks of CodeSaving Time and MemoryAdvanced Concepts – OOP, Decorators, and IteratorsTesting, Profiling, and Dealing with ExceptionsThe Edges – GUIs and ScriptsData ScienceWeb Development Done RightDebugging and TroubleshootingSumming Up – A Complete Example
Author: Fabrizio Romano