E-reader Example 1

This contains a single run of the ereader.py program. User input is bolded. The example is interspersed with comments about how the e-reader operates. The e-reader’s main menu is already implemented for you.

$ python3 ereader.py

Since this is the first time you used it,
let's customize your Swindle...

Please enter your name: Ali

Welcome to Ali's Swindle v1.0!

--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 2
You don't own any books.

Notice that when the user initially starts the e-reader they do not own any books.

--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 1
1.       Alice in Wonderland by             Lewis Carroll (1865)
2.    Mary Had a Little Lamb by        Sarah Josepha Hale (1830)
3.                 Peter Pan by              J. M. Barrie (1922)
4.       Pride and Prejudice by               Jane Austin (1813)
5.          Romeo and Juliet by       William Shakespeare (1597)
6.          The Time Machine by               H. G. Wells (1895)
7.           Treasure Island by    Robert Louis Stevenson (1883)
8.                   Ulysses by               James Joyce (1922)

Which book would you like to buy (0 to skip)? 1
You successfully purchased the book: Alice in Wonderland

As the user buys books, the list of available books decreases and the list of owned books increases.

--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 1
1.    Mary Had a Little Lamb by        Sarah Josepha Hale (1830)
2.                 Peter Pan by              J. M. Barrie (1922)
3.       Pride and Prejudice by               Jane Austin (1813)
4.          Romeo and Juliet by       William Shakespeare (1597)
5.          The Time Machine by               H. G. Wells (1895)
6.           Treasure Island by    Robert Louis Stevenson (1883)
7.                   Ulysses by               James Joyce (1922)

Which book would you like to buy (0 to skip)? 4
You successfully purchased the book: Romeo and Juliet
--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 1
1.    Mary Had a Little Lamb by        Sarah Josepha Hale (1830)
2.                 Peter Pan by              J. M. Barrie (1922)
3.       Pride and Prejudice by               Jane Austin (1813)
4.          The Time Machine by               H. G. Wells (1895)
5.           Treasure Island by    Robert Louis Stevenson (1883)
6.                   Ulysses by               James Joyce (1922)

Which book would you like to buy (0 to skip)? 0

Users are allowed to go back to the main menu by entering 0 at the prompt to choose to skip the selection of the book.

Next we see a demonstration of the user reading a book. Much of the code needed for this in the Swindle class has been implemented for you (in the display_text method).

--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 3
1.       Alice in Wonderland by             Lewis Carroll (1865)
2.          Romeo and Juliet by       William Shakespeare (1597)

Which book would you like to read (0 to skip)? 1
Alice's Adventures in Wonderland

by Lewis Carroll



CHAPTER I.
Down the Rabbit-Hole


Alice was beginning to get very tired of sitting by her sister on the
bank, and of having nothing to do: once or twice she had peeped into
the book her sister was reading, but it had no pictures or
conversations in it, “and what is the use of a book,” thought Alice
“without pictures or conversations?”

So she was considering in her own mind (as well as she could, for the
hot day made her feel very sleepy and stupid), whether the pleasure of
making a daisy-chain would be worth the trouble of getting up and
picking the daisies, when suddenly a White Rabbit with pink eyes ran

Showing page 0 out of 167

n (next); p (previous); q (quit): n

close by her.

There was nothing so very remarkable in that; nor did Alice think it
so very much out of the way to hear the Rabbit say to itself, “Oh
dear! Oh dear! I shall be late!” (when she thought it over afterwards,
it occurred to her that she ought to have wondered at this, but at the
time it all seemed quite natural); but when the Rabbit actually took a
watch out of its waistcoat-pocket, and looked at it, and then hurried
on, Alice started to her feet, for it flashed across her mind that she
had never before seen a rabbit with either a waistcoat-pocket, or a
watch to take out of it, and burning with curiosity, she ran across the
field after it, and fortunately was just in time to see it pop down a
large rabbit-hole under the hedge.

In another moment down went Alice after it, never once considering how
in the world she was to get out again.

The rabbit-hole went straight on like a tunnel for some way, and then
dipped suddenly down, so suddenly that Alice had not a moment to think
about stopping herself before she found herself falling down a very

Showing page 1 out of 167

n (next); p (previous); q (quit): n

deep well.

Either the well was very deep, or she fell very slowly, for she had
plenty of time as she went down to look about her and to wonder what
was going to happen next. First, she tried to look down and make out
what she was coming to, but it was too dark to see anything; then she
looked at the sides of the well, and noticed that they were filled with
cupboards and book-shelves; here and there she saw maps and pictures
hung upon pegs. She took down a jar from one of the shelves as she
passed; it was labelled “ORANGE MARMALADE”, but to her great
disappointment it was empty: she did not like to drop the jar for fear
of killing somebody underneath, so managed to put it into one of the
cupboards as she fell past it.

“Well!” thought Alice to herself, “after such a fall as this, I shall
think nothing of tumbling down stairs! How brave they’ll all think me
at home! Why, I wouldn’t say anything about it, even if I fell off the
top of the house!” (Which was very likely true.)

Down, down, down. Would the fall never come to an end? “I wonder how

Showing page 2 out of 167

n (next); p (previous); q (quit): n

many miles I’ve fallen by this time?” she said aloud. “I must be
getting somewhere near the centre of the earth. Let me see: that would
be four thousand miles down, I think—” (for, you see, Alice had learnt
several things of this sort in her lessons in the schoolroom, and
though this was not a very good opportunity for showing off her
knowledge, as there was no one to listen to her, still it was good
practice to say it over) “—yes, that’s about the right distance—but
then I wonder what Latitude or Longitude I’ve got to?” (Alice had no
idea what Latitude was, or Longitude either, but thought they were nice
grand words to say.)

Presently she began again. “I wonder if I shall fall right through
the earth! How funny it’ll seem to come out among the people that walk
with their heads downward! The Antipathies, I think—” (she was rather
glad there was no one listening, this time, as it didn’t sound at all
the right word) “—but I shall have to ask them what the name of the
country is, you know. Please, Ma’am, is this New Zealand or Australia?”
(and she tried to curtsey as she spoke—fancy curtseying as you’re
falling through the air! Do you think you could manage it?) “And what
an ignorant little girl she’ll think me for asking! No, it’ll never do

Showing page 3 out of 167

n (next); p (previous); q (quit): q

The bookmark for Alice in Wonderland was set to page 3

When the user is done reading a particular book the current page number is saved. Whenever a user returns to a book to read it again, the book will be presented from this saved page.

Next the user is going back to the first book that they were reading and it will return to the page where they left off last time.

--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 3
1.       Alice in Wonderland by             Lewis Carroll (1865)
2.          Romeo and Juliet by       William Shakespeare (1597)

Which book would you like to read (0 to skip)? 1
many miles I’ve fallen by this time?” she said aloud. “I must be
getting somewhere near the centre of the earth. Let me see: that would
be four thousand miles down, I think—” (for, you see, Alice had learnt
several things of this sort in her lessons in the schoolroom, and
though this was not a very good opportunity for showing off her
knowledge, as there was no one to listen to her, still it was good
practice to say it over) “—yes, that’s about the right distance—but
then I wonder what Latitude or Longitude I’ve got to?” (Alice had no
idea what Latitude was, or Longitude either, but thought they were nice
grand words to say.)

Presently she began again. “I wonder if I shall fall right through
the earth! How funny it’ll seem to come out among the people that walk
with their heads downward! The Antipathies, I think—” (she was rather
glad there was no one listening, this time, as it didn’t sound at all
the right word) “—but I shall have to ask them what the name of the
country is, you know. Please, Ma’am, is this New Zealand or Australia?”
(and she tried to curtsey as she spoke—fancy curtseying as you’re
falling through the air! Do you think you could manage it?) “And what
an ignorant little girl she’ll think me for asking! No, it’ll never do

Showing page 3 out of 167

n (next); p (previous); q (quit): n

to ask: perhaps I shall see it written up somewhere.”

Down, down, down. There was nothing else to do, so Alice soon began
talking again. “Dinah’ll miss me very much to-night, I should think!”
(Dinah was the cat.) “I hope they’ll remember her saucer of milk at
tea-time. Dinah my dear! I wish you were down here with me! There are
no mice in the air, I’m afraid, but you might catch a bat, and that’s
very like a mouse, you know. But do cats eat bats, I wonder?” And here
Alice began to get rather sleepy, and went on saying to herself, in a
dreamy sort of way, “Do cats eat bats? Do cats eat bats?” and
sometimes, “Do bats eat cats?” for, you see, as she couldn’t answer
either question, it didn’t much matter which way she put it. She felt
that she was dozing off, and had just begun to dream that she was
walking hand in hand with Dinah, and saying to her very earnestly,
“Now, Dinah, tell me the truth: did you ever eat a bat?” when suddenly,
thump! thump! down she came upon a heap of sticks and dry leaves, and
the fall was over.

Alice was not a bit hurt, and she jumped up on to her feet in a moment:
she looked up, but it was all dark overhead; before her was another

Showing page 4 out of 167

n (next); p (previous); q (quit): q

The bookmark for Alice in Wonderland was set to page 4
--------------------------------------------------

1) Buy/See available books
2) See owned books
3) Read a book
0) Exit

Enter a selection: 4