We may earn an affiliate commission when you visit our partners.
Austin Bingham and Robert Smallshire

A key to Python's expressiveness lies in its model of functions and the tools it provides for working with them. In this course, you'll learn more about Python's concept of "callable objects" and some sophisticated ways to use them in your programs.

Read more

A key to Python's expressiveness lies in its model of functions and the tools it provides for working with them. In this course, you'll learn more about Python's concept of "callable objects" and some sophisticated ways to use them in your programs.

In Python, as with most programming languages, functions are a fundamental tool for managing program complexity. Understanding how to use functions fluently is a key skill on the road to mastering Python, as is knowing alternative techniques for the cases where functions are insufficient for your needs. In this course,Core Python 3: Functions and Functional Programming, you'll learn about some of the finer details of using functions as well as more general concepts that subsume them. First, you'll look at the various types of callable objects in Python, along with extended argument definition and calling syntax. Then, you'll explore local functions and the concept of closures that allow them to work. Next, you'll discover Python's powerful system of decorators which allow you to enhance or modify existing functions. Finally, you'll understand the functional-style programming tools in Python along with advanced use of comprehensions. By the end of this course, you'll have a deeper understanding of Python's sophisticated approach to calling functions, and you'll see that functions are actually just one aspect of a more general set of concepts in the language.

Enroll now

What's inside

Syllabus

Course Overview
Function and Callables
Extended Argument and Call Syntax
Closures
Read more
Function Decorators
Functional-style Tools
Multi-input and Nested Comprehension

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Students with prior knowledge of Python can strengthen their existing foudnation
Experienced Python programmers will find new insights about Python's approach to functions
This course goes advanced with functions, decorators, closures, and more
Provides learners with sophisticated uses for functions, beyond basic function usage
Examines the use of functional-style programming tools, significantly extending function usage
Taught by experienced Python instructors, Robert Smallshire and Austin Bingham

Save this course

Save Core Python 3: Functions and Functional Programming to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Core Python 3: Functions and Functional Programming. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Core Python 3: Functions and Functional Programming will develop knowledge and skills that may be useful to these careers:
Software Engineer
A Software Engineer designs, develops, and tests software, and can work in a variety of industries. This course can help build a foundation for this role by teaching learners about Python's concept of "callable objects" and how to use them effectively in programs, as well as providing knowledge of Python's powerful system of decorators and functional-style programming tools. Especially helpful are the extended argument definition and calling syntax, which can help ensure code quality and correctness.
Data Scientist
A Data Scientist uses scientific methods, processes, algorithms, and systems to extract knowledge and insights from data. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for working with and analyzing data.
Web Developer
A Web Developer designs and develops websites. This course can help build a foundation for this role by providing learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for web development.
Quality Assurance Analyst
A Quality Assurance Analyst tests software to identify and report bugs and errors. This course can be useful for this role as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for understanding how to test and analyze software effectively.
Computer Programmer
A Computer Programmer writes and tests code. This course can help build a foundation for this role by providing learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for writing and testing code effectively.
Machine Learning Engineer
A Machine Learning Engineer develops and implements machine learning models. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for working with machine learning algorithms and models.
Data Analyst
A Data Analyst collects, analyzes, interprets, and presents data. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for working with and analyzing data.
Software Tester
A Software Tester tests software to identify and report bugs and errors. This course can be useful for this role as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for understanding how to test and analyze software effectively.
Business Analyst
A Business Analyst analyzes business processes and develops solutions to improve efficiency and effectiveness. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for business analysis.
Systems Analyst
A Systems Analyst analyzes and designs computer systems. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for systems analysis.
Database Administrator
A Database Administrator manages and maintains databases. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools and advanced use of comprehensions. This can help build a solid foundation for working with and managing databases.
Network Administrator
A Network Administrator manages and maintains computer networks. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for network administration.
IT Manager
An IT Manager plans and directs the installation, operation, and maintenance of computer systems. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for IT management.
Project Manager
A Project Manager plans, organizes, and directs projects. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for project management.
Technical Writer
A Technical Writer creates and maintains technical documentation. This course may be useful for this role, as it provides learners with a deeper understanding of Python's approach to calling functions, as well as knowledge of Python's functional-style programming tools. Additionally, the exploration of local functions and the concept of closures can be helpful in understanding how to structure and organize code for technical writing.

Reading list

We haven't picked any books for this reading list yet.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser