Data Types [01]: Python Built-In Types
Published:
The principal built-in types in Python are numerics, sequences, mappings, classes, instances and exceptions. Reference [this] site for a complete description. This post will cover some of the commonly used python built-in types.
Numeric Types
intfloatcomplex
Supported Operations
x + y,x - y,x * y,x / y,x // y,x % yx| y,x ^ y,x & y,x << n,x >> n, `~x’abs(x),int(x),float(x)complex(re,im),c.conjugate()divmod(x, y),pow(x, y),x ** ymath.trunc(x),round(x[, n]),math.floor(x),math.ceil(x)
Sequence Types
list- Using a pair of square brackets to denote the empty list:
[] - Using square brackets, separating items with commas:
[a],[a, b, c] - Using a list comprehension:
[x for x in iterable] - Using the type constructor:
list()orlist(iterable) - Mutable
- Using a pair of square brackets to denote the empty list:
tuple- Using a pair of parentheses to denote the empty tuple:
() - Using a trailing comma for a singleton tuple:
a,or(a,) - Separating items with commas:
a, b, cor(a, b, c) - Using the tuple() built-in:
tuple()ortuple(iterable) - Immutable
- Using a pair of parentheses to denote the empty tuple:
rangerange(stop)range(start, stop[, step])- Immutable
str- Single quotes:
'allows embedded "double" quotes' - Double quotes:
"allows embedded 'single' quotes" - Triple quoted:
'''Three single quotes''', """Three double quotes""" - Immutable
- Single quotes:
Common Operations
x in s,x not in ss + t,s * ns[i],s[i:j],s[i:j:k]len(s),min(s),max(s)s.index(x[, i[, j]]),s.count(x)
Mutable Sequence Operations
s[i] = x,s[i:j] = t,s[i:j:k] = tdel s[i],del s[i:j],del s[i:j:k],s.clear()/del s[:]s.append(x),s.pop()/s.pop(i),s.remove(x)s.copy()/s[:],s.reverse()s.extend(t)/s += t,s *= n,s.insert(i, x)
Mapping Types
dict- Use a comma-separated list of
key: valuepairs within braces:{'jack': 4098, 'sjoerd': 4127} - Use a dict comprehension:
{},{x: x ** 2 for x in range(10)} - Use the type constructor:
dict(),dict([('foo', 100), ('bar', 200)]),dict(foo=100, bar=200) - Mutable
- Use
keysto change adictinstead ofindexlike that in alist
- Use
- Use a comma-separated list of
Dict Operations
list(d),len(d),d[key]d[key] = value,del d[key],clear()key in d,key not in dget(key[, default])d.copy(),reversed(d)d.pop(key[, default]),d.popitem()
Set Types
set- Use a comma-separated list of elements within braces:
{'jack', 'sjoerd'} - Use a set comprehension:
{c for c in 'abracadabra' if c not in 'abc'} - Use the type constructor:
set(), set('foobar'), set(['a', 'b', 'foo']) - Immutable (except
add()andremove())
- Use a comma-separated list of elements within braces:
Binary Types
bytes- Single quotes:
b'still allows embedded "double" quotes' - Double quotes:
b"still allows embedded 'single' quotes" - Triple quoted:
b'''3 single quotes''',b"""3 double quotes""" - Immutable
- Single quotes:
bytearray- Creating an empty instance:
bytearray() - Creating a zero-filled instance with a given length:
bytearray(10) - From an iterable of integers:
bytearray(range(20)) - Copying existing binary data via the buffer protocol:
bytearray(b'Hi!') - Mutable
- Creating an empty instance:
Iterator Types
Python supports a concept of iteration over containers. This is implemented using two distinct methods; these are used to allow user-defined classes to support iteration.
Lists, tuples, dictionaries, str and sets are all iterable objects.
Dict Operations
iterator = iter(iterableObj)next(iterator)
animals = {'dog', 'cat', 'pig', 'goat'}
iterator = iter(animals)
next(iterator)
Out[104]: 'cat'
next(iterator)
Out[105]: 'goat'
next(iterator)
Out[106]: 'pig'
next(iterator)
Out[107]: 'dog'
To create an object/class as an iterator we have to implement the methods iter() and next() to the object.
iterator.__iter__(): Return the iterator object itself. This is required to allow both containers and iterators to be used with the for and in statements.
iterator.__next__(): Return the next item from the iterator. If there are no further items, raise the StopIteration exception.

Comments