Join Michele Vallisneri for an in-depth discussion in this video Computer architecture and optimization techniques, part of Python: Programming Efficiently.
- [Narrator] Python is efficient,…but it's not natively fast.…It was built for ease of coding,…rather than for performance.…So if you compare Python with a compiled language,…such as Fortune,…you see that Python is generally much slower…because it's interpreted rather than compiled,…and the interpreter cannot look ahead…to perform code optimization,…and it also implies more overheads.…It's dynamically typed, that is,…the type of variables is determined at run time,…so Python needs larger data structures…and more checks and look ups to do anything.…
Added features of the language,…such as the very powerful and fluid object model,…require more references and indirect accesses to memory,…which can be slow.…Still, Python is easier to use and more forgiving,…leading to a more efficient development cycle.…When speed or memory savings are needed,…there are several strategies that we can apply:…Reducing CPU and memory usage…by changing algorithms and data structures,…optimizing code strategically after profiling it,…integrating with compiled libraries…
- Designing efficient loops
- Exploiting Python collections
- Writing Pythonic code
- Choosing the best libraries for your tasks
- Downloading webpages with requests
- Parsing HTML with Beautiful Soup
- Manipulating images with Pillow
- Making videos and drawing on maps with matplotlib
- Serving webpages with Jinja2 and Flask
- Working with Python classes
- Taking advantage of functional techniques
- Profiling CPU and memory use
- Exploiting parallelism
Skill Level Intermediate
1. Installation and Setup
Jupyter notebooks3m 19s
2. Writing Python Efficiently
3. Exploiting Python Libraries
4. Advanced: Python Object-Oriented and Functional Programming
5. Introduction to Performance Optimization in Python
Next steps1m 2s
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.