basic_python/strings_dicts.rst
author Santosh G. Vattam <vattam.santosh@gmail.com>
Wed, 16 Sep 2009 16:57:49 +0530
changeset 65 0f25f22a2725
child 67 5076574b7b83
permissions -rw-r--r--
Added the strings_dict.rst file.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
65
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     1
=======
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     2
Strings
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     3
=======
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     4
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     5
Strings were briefly introduced previously in the introduction document. In this
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     6
section strings will be presented in greater detail. All the standard operations 
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     7
that can be performed on sequences such as indexing, slicing, multiplication, length
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     8
minimum and maximum can be performed on string variables as well. One thing to
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
     9
be noted is that strings are immutable, which means that string variables are
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    10
unchangeable. Hence, all item and slice assignments on strings are illegal.
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    11
Let us look at a few example.
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    12
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    13
::
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    14
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    15
  >>> name = 'PythonFreak'
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    16
  >>> print name[3]
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    17
  h
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    18
  >>> print name[-1]
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    19
  k
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    20
  >>> print name[6:]
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    21
  Freak
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    22
  >>> name[6:0] = 'Maniac'
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    23
  Traceback (most recent call last):
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    24
    File "<stdin>", line 1, in <module>
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    25
  TypeError: 'str' object does not support item assignment
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    26
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    27
This is quite expected, since string objects are immutable as already mentioned.
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    28
The error message is clear in mentioning that 'str' object does not support item
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    29
assignment.
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    30
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    31
String Formatting
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    32
=================
0f25f22a2725 Added the strings_dict.rst file.
Santosh G. Vattam <vattam.santosh@gmail.com>
parents:
diff changeset
    33