Conclusion
1. Consider a string, tuple, and list of characters.
In []: a = 'acbde'
In []: b = ('a', 'b', 'c', 'd', 'e')
In []: c = ['a', 'b', 'c', 'd', 'e']
The values of a[3], b[3], and c[3] are all the same. In what ways are a, b, and c different?
Strings can be printed and concatenated as a standard string.
Tuples can be appended and store different string lengths in each element.
A list of characters can only be read from.
2. Why do computer programming languages almost always have a variety of variable types?
Languages have different variable types because different variables' contents are incompatible by nature.
3. Why can't everything be represented with an integer?
Technically speaking, everything COULD be represented as integers since computers store everything as 1s and 0s. But it would be difficult and inefficient.