Practice Python

Beginner Python exercises

12 March 2014

String Lists

strings lists index

Exercise 6 (and Solution)

Ask the user for a string and print out whether this string is a palindrome or not. (A palindrome is a string that reads the same forwards and backwards.)

Discussion

Concepts for this week:

  • List indexing
  • Strings are lists

List indexing

In Python (and most programming in general), you start counting lists from the number 0. The first element in a list is "number 0", the second is "number 1", etc.

As a result, when you want to get single elements out of a list, you can ask a list for that number element:

 >>> a = [5, 10, 15, 20, 25]
 >>> a[3]
 20
 >>> a[0]
 5

There is also a convenient way to get sublists between two indices:

 >>> a = [5, 10, 15, 20, 25, 30, 35, 40]
 >>> a[1:4]
 [10, 15, 20]
 >>> a[6:]
 [35, 40]
 >>> a[:-1]
 [5, 10, 15, 20, 25, 30, 35]

The first number is the "start index" and the last number is the "end index."

You can also include a third number in the indexing, to count how often you should read from the list:

 >>> a = [5, 10, 15, 20, 25, 30, 35, 40]
 >>> a[1:5:2]
 [10, 20]
 >>> a[3:0:-1]
 [15, 10, 5]

To read the whole list, just use the variable name (in the above examples, a), or you can also use [:] at the end of the variable name (in the above examples, a[:]).

Strings are lists

Because strings are lists, you can do to strings everything that you do to lists. You can iterate through them:

 string = "example"
 for c in string: 
 print "one letter: " + c

Will give the result:

 one letter: e
 one letter: x
 one letter: a
 one letter: m
 one letter: p
 one letter: l
 one letter: e

You can take sublists:

 >>> string = "example"
 >>> s = string[0:5]
 >>> print s
 examp

Now s has the string "examp" in it.

Moral of the story: a string is a list.

Happy coding!

Enjoying Practice Python?

Buy me a coffee

Share the fun!

« Previous exercise Next exercise »

Please enable JavaScript to view the comments powered by Disqus. comments powered by Disqus
Copyright Michele Pratusevich, 2014-2022.
Advertising disclosure
(追記) (追記ここまで)

AltStyle によって変換されたページ (->オリジナル) /