Python Concepts/Basic data types

From Wikiversity
Jump to: navigation, search


This page serves as a generalized introduction to the variable types present within Python.


Though different languages may handle variable types uniquely, most are quite similar. Python variable types, like the rest of the language, are quite simple. Variable types are determined by the value stored within the variable. Unlike most other languages, keywords like "int", "String", or "bool" are not required in Python, as Python supports type inferencing. The most general compatible variable type is chosen.

There are three main categories of variable types in Python (and every other programming language). They are listed below, ordered by increasing complexity.

Primitive Variables[edit]

Primitive variables are the most basic, hence their "primitive" title. They are capable of storing a single value. In Python there are four primitive variable types, which are listed below.





In Python, there is no "char" variable type. Instead, characters are represented with a string with a length of one.


Compound Variables[edit]

Complex Variables[edit]

Types are a category for things within Python with which Python will work. Types are

Whole numbers from negative infinity to infinity, such as 1, 0, -5, etc.
Short for "floating point number," any rational number, usually used with decimals such as 2.8 or 3.14159.
A set of letters, numbers, or other characters.
A list with a fixed number of elements. ie x=(1,2,3) parentheses makes it a tuple.
A list without a fixed number of elements. ie x=[1,2,3] note the square brackets, a list
A type with multiple elements i.e. x = {1: 'a','b': 2,3: 3} where you address the elements with, e.g., a text.

Opening IDLE[edit]

First open IDLE and then open a shell. To open the shell look through the menu bar, some have it under windows, and some have their own shell list. Many also have the short-cut F5.

The shell prompts with ">>>" - the following examples are in the shell.


Integers are numeric values and can be stored, manipulated, and expressed inside variables without quotes.


>>> 23

Notice how it returns the number 23.


>>> -44

You can also perform basic math using integers as well. Type:

>>> 45 - 19


Strings are a type. They are the basic unit of text in Python and all the other types except integers may contain strings.

Type the following into the shell:

>>>"I Love Python"

It will return

'I Love Python'

You can also make a variable refer to a string.


>>>x = "I Love Python"

Now Type:


'I Love Python'

Now Type:

>>>print (x)

I Love Python

The print command prints the value that 'x' stands for on the screen. It removes the quotations. Whenever you type something into a type that isn't an integer, syntax (the commands that you give python, such as print), or variable (such as x just was) you need to put it into quotations. You can use 'single' or "double" quotations. If you wrote parenthesis outside of the quotations you would have made a tuple (the 'u' sounds like 'touch', not 'tooch') instead of a string. You can also call on a single element in a string.

Type either:

>>>print (x[3])




Now Type either:

>>>print (x[9])




As you can see the elements are numbered starting with 0 (due to Python using Ordinals).

0 1 2 3 4 5 6 7 8 9 10 11 12
I   L o v e   P y t h o n


A tuple is an unchangeable sequence of values. When you typed ('I love Python') you only included one element.


>>>x = ("element 1", "element 2", "element 3")

When you do this you create a tuple with three elements. You can access these elements individually by typing the variable and the then inside brackets directly to the right of the variable type the number of the element to which you are referring. Type:

>>> print (x[1])

element 2

You may think that it is odd that it returned element 2 instead of element 1. The reason that it did this is because Python starts numbering at 0. element 1 = 0, element 2= 1, element 3= 2. You can also call on the elements in reverse order. Type:

>>>print (x[-1])

element 3

The reason that it returned element 3 and not element 2 is because there is no such thing as -0 so it must start numbering in reverse with -1. If you used brackets instead of parenthesis you would have made a list.


A list is a changeable sequence of data. A list is contained by square brackets i.e. [1,2,3]


>>> x = ["I", "Love", "Python"]
>>> x[2] = "Wikiversity"
>>> print(x)
['I', 'Love', 'Wikiversity']

The above code changes element number 2 in x. The last thing we learn is dictionaries.


Dictionaries contain a key and a value. { } enclose dictionaries (Note, that you can also construct a set with curly brackets


>>> x = {'key1':'value1', 'key2':'value2'}

Now Type:

>>> print(x)
{'Key2':'value2', 'key1':'value1'}

Depending on what IDLE you are using these may be in different order. The reason for the different order is because dictionaries have no order. You cannot type x[0] and be referring to 'key1':'value1' . What you do to refer to a value is type the key.


>>> x['key1'] = 'I Love Python'

Now Type:

>>> print(x)
{'Key2':'value2', 'key1':'I Love Python'}

The keys stay the same but the values are changeable. You can also only have one occurrence of a key in a dictionary, but you may have the values all be the same.


>>> x = {'key':'value1', 'key':'value2'}

Now Type:

>>> print(x)
{'key': 'value2'}

The first key is overwritten by the second.


>>> x = {'key1':'value', 'key2':'value'}

Now Type:

>>> print(x)
{'key2': 'value', 'key1': 'value'}

This example shows that you can create two separate keys with the same value.

data types quiz[edit]



Which is an integer



Which is a dictionary?

{1: 1, 2: 2, 3: 2}

Or take the:

next: Python Operators