Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Dancing with Python
  • Table Of Contents Toc
  • Feedback & Rating feedback
Dancing with Python

Dancing with Python

By : Robert S. Sutor
5 (7)
close
close
Dancing with Python

Dancing with Python

5 (7)
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)
close
close
2
Part I: Getting to Know Python
10
PART II: Algorithms and Circuits
14
PART III: Advanced Features and Libraries
19
References
20
Other Books You May Enjoy
1
Appendices
4
Appendix C: The Complete UniPoly Class
5
Appendix D: The Complete Guitar Class Hierarchy
7
Appendix F: Production Notes

1.9 Records

Consider this one-sentence paragraph with some text formatted in bold and italics:

Some words are bold, some are italic, and some are both.

How could you represent this as data in a word processor, spreadsheet, or presentation application?

Let’s begin with the text itself for the paragraph. Maybe we just use a string.

"Some words are bold, some are italic, and some are both."

The words are there, but we lost the formatting. Let’s break the sentence into a list of the formatted and unformatted parts. I use square brackets “[ ]” around the list and commas to separate the parts.

[ "Some words are ",
  "bold",
  ",some are ",
  "italic",
  ", and some are ",
  "both",
  "." ]

Now we can focus on how to embellish each part with formatting. There are four options:

  1. the text has no formatting,
  2. the text is only bold,
  3. the text is only italic, and
  4. the text is both bold and italic.

Each part needs three pieces of information: the string holding the text, a Boolean indicating whether it is bold, and another Boolean indicating whether it is italic.

[ {text: "Some words are ", bold: false, italic: false},
  {text: "bold", bold: true, italic: false},
  {text: ",some are ", bold: false, italic: false},
  {text: "italic", bold: false, italic: true},
  {text: ", and some are ", bold: false, italic: false},
  {text: "both", bold: true, italic: true},
  {text: ".", bold: false, italic: false} ]

The object that I’ve shown inside braces “{ }” is a record. It has named members that I can access independently.

Languages often use a period “.” to access the value for a member. If I assign the first record in the list to the variable “part_1,” you might see something like part_1.text or part_1.italic in the code. The values are “Some words are ” and false.

Exercise 1.10

Word processors allow much more formatting than shown here. How would you extend the example to include fonts? Make sure you take into account font names, sizes, and colors.

In C, a record is called a struct, and most languages have some way of representing records. The syntax I used in the example is not Python.

While records allow us to create objects with constituent parts, they are not much better than lists that contain items of different types, such as integers and strings. We need to raise the level of abstraction and make new kinds of objects that have functions that work just on them. We also want to hide the representation and workings of these new compound objects. That way, we can alter and improve them without breaking dependent code and applications.

Visually different images
CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Dancing with Python
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon