Free Downloads
Functional Python Programming - Create Succinct And Expressive Implementations With Python

Key FeaturesImplement common functional programming design patterns and techniques in PythonLearn how to choose between imperative and functional approaches based on expressiveness, clarity, and performanceApply functional Python to common Exploratory Data Analysis (EDA) programming problemsBook DescriptionPython’s easy-to-learn and extensible abilities offer a number of functional programming features for you to bring into your workflow, especially in the realm of data science.If you’re a Python developer who wants to discover how to take the power of functional programming and bring it into your own programs then this book is essential for you, even if you know next to nothing about the paradigm. Starting with a general overview of functional concepts you’ll explore common functional features such as first-class and higher-order functions, pure functions and more, and how these are accomplished in Python to give you the core foundations you’ll build upon. After that, you’ll discover common functional optimizations for Python to help your apps reach even higher speeds. You'll also explore data preparation techniques and data exploration in depth, along with learning how the Python standard library fits the functional programming model. Finally, to top off your journey into the world of function Python you’ll at look at the PyMonad project and some larger examples to put everything into perspective.With Functional Python Programming by your side you’ll understand the core concepts of function Python, its impact on the programming workflow, and how to implement it in Python, giving you the ability to take your applications to an even higher level.What you will learnUse Python's generator functions and generator expressions to work with collections in a non-strict (or lazy) mannerUtilize Python library modules including itertools, functools, multiprocessing, and concurrent.futures for efficient functional programsUse Python strings with object-oriented suffix notation and prefix notationAvoid stateful classes by making use of families of tuplesDesign and implement decorators to create composite functionsUse functions like max(), min(), map(), filter(), and sorted()Write advanced higher-order functionsAbout the AuthorSteven F. Lott has been programming since the 70s, when computers were large, expensive, and rare. As a contract software developer and architect, he has worked on hundreds of projects, from very small to very large. He's been using Python to solve business problems for over 10 years.Table of ContentsIntroducing Functional ProgrammingIntroducing Some Functional FeaturesFunctions, Iterators, and GeneratorsWorking with CollectionsHigher-order FunctionsRecursions and ReductionsAdditional Tuple TechniquesThe Itertools ModuleMore Itertools TechniquesThe Functools ModuleDecorator Design TechniquesThe Multiprocessing and Threading ModulesConditional Expressions and the Operator ModuleThe Pymonad LibraryA Functional Approach to Web ServicesOptimizations and Improvements

File Size: 1912 KB

Print Length: 362 pages

Publisher: Packt Publishing (January 31, 2015)

Publication Date: January 31, 2015

Sold by:  Digital Services LLC

Language: English


Text-to-Speech: Enabled

X-Ray: Not Enabled

Word Wise: Not Enabled

Lending: Not Enabled

Enhanced Typesetting: Enabled

Best Sellers Rank: #201,755 Paid in Kindle Store (See Top 100 Paid in Kindle Store) #23 in Books > Computers & Technology > Programming > Functional #88 in Kindle Store > Kindle eBooks > Computers & Technology > Programming > Python #244 in Books > Computers & Technology > Programming > Languages & Tools > Python

Unless you have lived in a cave for the last few years you probably realize the importance of Python in today’s IT world. It has become the go to tool for science, statistics, math and large data. There are many different add-ons and libraries that make Python a leader in this area. But as great as Python is, it was not originally designed to be a purely functional programming language. Is this a bad thing?Absolutely not. Python was designed to be a flexible, easy to read programming language that could fit into just about any programming modality. So what makes a fully functional programming language? It would take a very long book to fully explain this, but in its most simplistic form a functional language does not concentrate on state, but a series of functions that receive an input (of many types) and gives on output (again of many types). It does not keep track of other things outside the request and therefor can be very efficient at what it does and lends itself to efficient testing without keeping track of lots of outside issues. Think of a command line where you put in something and get a response. Together, a group of these functions become a program that handles the myriad of requests given it. It lends itself more to projects with specific things to accomplish.So why Python Functional Programming and more importantly, why this book. Python can also lend itself to inefficient objects, styles and procedures and the use of carefully crafted functions in various area can greatly improve your code and the speed and efficiency of your program. This book covers many areas where superbly crafted functions could dramatically affect the performance and readability of your coding.

Functional Python Programming - Create Succinct and Expressive Implementations with Python Python: PYTHON CRASH COURSE - Beginner's Course To Learn The Basics Of Python Programming In 24 Hours!: (Python, Python Programming, Python for Dummies, Python for Beginners, python crash course) Python: Learn Python In A DAY! - The Ultimate Crash Course to Learning the Basics of Python In No Time (Python, Python Course, Python Development, Python Books, Python for Beginners) Programming #45: Python Programming Professional Made Easy & Android Programming In a Day! (Python Programming, Python Language, Python for beginners, ... Programming Languages, Android Programming) Python: Learn Python FAST - The Ultimate Crash Course to Learning the Basics of the Python Programming Language In No Time (Python, Python Programming, ... (Learn Coding Fast with Hands-On Project 7) PYTHON: Python in 8 Hours, For Beginners, Learn Python Fast! A Smart Way to Learn Python, Plain & Simple, Learn Python Programming Language in Easy Steps, A Beginner's Guide, Start Coding Today! Programming Raspberry Pi 3: Getting Started With Python (Programming Raspberry Pi 3, Raspberry Pi 3 User Guide, Python Programming, Raspberry Pi 3 with Python Programming) Python: Learn Web Scraping with Python In A DAY! - The Ultimate Crash Course to Learning the Basics of Web Scraping with Python In No Time (Web Scraping ... Python Books, Python for Beginners) Programming #8:C Programming Success in a Day & Android Programming In a Day! (C Programming, C++programming, C++ programming language, Android , Android Programming, Android Games) Programming #57: C++ Programming Professional Made Easy & Android Programming in a Day (C++ Programming, C++ Language, C++for beginners, C++, Programming ... Programming, Android, C, C Programming) Programming: Computer Programming for Beginners: Learn the Basics of Java, SQL & C++ - 3. Edition (Coding, C Programming, Java Programming, SQL Programming, JavaScript, Python, PHP) Swift and Python Programming Guide: Programming Language For Beginners: Learn in a Day! Box Set Collection (Swift, Python, JAVA, C++. PHP) Hacking: Hacking Made Easy 1: Beginners: Python: Python Programming For Beginners, Computer Science, Computer Programming Programming: Swift: Create A Fully Functioning App: Learn In A Day! (Apps, PHP, HTML, Python, Programming Guide, Java, App Development) DOS: Programming Success in a Day: Beginners guide to fast, easy and efficient learning of DOS programming (DOS, ADA, Programming, DOS Programming, ADA ... LINUX, RPG, ADA Programming, Android, JAVA) ASP.NET: Programming success in a day: Beginners guide to fast, easy and efficient learning of ASP.NET programming (ASP.NET, ASP.NET Programming, ASP.NET ... ADA, Web Programming, Programming) C#: Programming Success in a Day: Beginners guide to fast, easy and efficient learning of C# programming (C#, C# Programming, C++ Programming, C++, C, C Programming, C# Language, C# Guide, C# Coding) FORTRAN Programming success in a day:Beginners guide to fast, easy and efficient learning of FORTRAN programming (Fortran, Css, C++, C, C programming, ... Programming, MYSQL, SQL Programming) Prolog Programming; Success in a Day: Beginners Guide to Fast, Easy and Efficient Learning of Prolog Programming (Prolog, Prolog Programming, Prolog Logic, ... Programming, Programming Code, Java) Parallel Programming: Success in a Day: Beginners' Guide to Fast, Easy, and Efficient Learning of Parallel Programming (Parallel Programming, Programming, ... C++ Programming, Multiprocessor, MPI)