Book Image

Dancing with Python

By : Robert S. Sutor
Book Image

Dancing with Python

By: Robert S. Sutor

Overview of this book

Dancing with Python helps you learn Python and quantum computing in a practical way. It will help you explore how to work with numbers, strings, collections, iterators, and files. The book goes beyond functions and classes and teaches you to use Python and Qiskit to create gates and circuits for classical and quantum computing. Learn how quantum extends traditional techniques using the Grover Search Algorithm and the code that implements it. Dive into some advanced and widely used applications of Python and revisit strings with more sophisticated tools, such as regular expressions and basic natural language processing (NLP). The final chapters introduce you to data analysis, visualizations, and supervised and unsupervised machine learning. By the end of the book, you will be proficient in programming the latest and most powerful quantum computers, the Pythonic way.
Table of Contents (29 chapters)
Part I: Getting to Know Python
PART II: Algorithms and Circuits
PART III: Advanced Features and Libraries
Other Books You May Enjoy
Appendix C: The Complete UniPoly Class
Appendix D: The Complete Guitar Class Hierarchy
Appendix F: Production Notes

8.1 Paths and the file system

The text string that describes how to get from the top of the file system to the exact file we want is called the pathname. Think of it as a set of directions to navigate to the information we want.

The tree in Figure 8.1 shows a subset of the folders and files I used to create this book.

A directory tree with folders and files
Figure 8.1: A directory tree with folders and files

The full path to the file Working-with-Files.html on Linux and macOS has the pathname


On Microsoft Windows, we would have a drive letter like “C:”, and we use backslashes instead of slashes. The pathname’s case is not significant on Windows, but it is on the other operating systems.


I will use slashes, and most Python routines that work with pathnames will work with either on...