### Ticker

6/recent/ticker-posts

# Python: Data Types

Data Type represent the type of data present inside a variable.

In Python we are not required to specify the type explicitly. Based on value provided, the type will be assigned automatically. Hence Python is Dynamically Typed Language.

Python contains the following inbuilt data types

```1. int
2. float
3.complex
4.bool
5.str
6.bytes
7.bytearray
8.range
9.list
10.tuple
11.set
12.frozenset
13.dict
14.None ```

1.type()

to check the type of variable

2. id()

3. print()

to print the value

In Python everything is object

int data type:

We can use int data type to represent whole numbers (integral values)

Eg:

a=10

type(a) #int

Note:

In Python2 we have long data type to represent very large integral values.

But in Python3 there is no long type explicitly and we can represent long values also by using int type only.

We can represent int values in the following ways

1. Decimal form
2. Binary form
3. Octal form
4. Hexa decimal form

1. Decimal form(base-10):

It is the default number system in Python

The allowed digits are: 0 to 9

Eg: a =10

2. Binary form(Base-2):

The allowed digits are : 0 & 1

Literal value should be prefixed with 0b or 0B

Eg: a = 0B1111

a =0B123

a=b111

3. Octal Form(Base-8):

The allowed digits are : 0 to 7

Literal value should be prefixed with 0o or 0O.

Eg: a=0o123

a=0o786

4. Hexa Decimal Form(Base-16):

The allowed digits are : 0 to 9, a-f (both lower and upper cases are allowed) Literal value should be prefixed with 0x or 0X

Eg:

a =0XFACE

a=0XBeef

a =0XBeer

Note: Being a programmer we can specify literal values in decimal, binary, octal and hexa decimal forms. But PVM will always provide values only in decimal form.

```a=10
b=0o10
c=0X10
d=0B10
print(a)10
print(b)8
print(c)16
print(d)2 ```

Base Conversions

Python provide the following in-built functions for base conversions

1.bin():

We can use bin() to convert from any base to binary

Eg:

```>>> bin(15)
'0b1111'
>>> bin(0o11)
'0b1001'
>>> bin(0X10)
'0b10000' ```

2. oct():

We can use oct() to convert from any base to octa

Eg:

```>>> oct(10)
'0o12'
>>> oct(0B1111)
'0o17'
>>> oct(0X123)
'0o443' ```

3. hex():

We can use hex() to convert from any base to hexa decimal

Eg:

```>>> hex(100)
'0x64'
>>> hex(0B111111)
'0x3f'
>>> hex(0o12345)
'0x14e5' ```

float data type:

We can use float data type to represent floating point values (decimal values)

Eg: f=1.234

type(f) float

We can also represent floating point values by using exponential form (scientific notation)

Eg: f=1.2e3

print(f) 1200.0

instead of 'e' we can use 'E'

The main advantage of exponential form is we can represent big values in less memory.

***Note:

We can represent int values in decimal, binary, octal and hexa decimal forms. But we can represent float values only by using decimal form.

Complex Data Type:

A complex number is of the form

a and b contain intergers or floating point values

Eg:

```3+5j
10+5.5j
0.5+0.1j ```

In the real part if we use int value then we can specify that either by decimal, octal, binary or hexa decimal form.

But imaginary part should be specified only by using decimal form.

```>>> a=0B11+5j
>>> a
(3+5j)
>>> a=3+0B11j
SyntaxError: invalid syntax ```

Note: Complex data type has some inbuilt attributes to retrieve the real part and imaginary part

c=10.5+3.6j

```c.real==>10.5
c.imag==>3.6 ```

We can use complex type generally in scientific Applications and electrical engineering Applications.

4.bool data type:

We can use this data type to represent Boolean values.

The only allowed values for this data type are:

True and False

Internally Python represents True as 1 and False as 0

b=True

type(b) =>bool

Eg:

```a=10
b=20
c=a<b
print(c)===>TRUE```
```True+True==>2
True-False==>1 ```

str type:

str represents String data type. A String is a sequence of characters enclosed within single quotes or double quotes.

```s1='durga'
s1="durga" ```

By using single quotes or double quotes we cannot represent multi line string literals.

```s1="durga
soft" ```

For this requirement we should go for triple single quotes(''') or triple double quotes(""")

```s1='''durga
soft''' ```
```s1="""durga
soft""" ```

We can also use triple quotes to use single quote or double quote in our String.

```''' This is " character'''
' This i " Character ' ```

We can embed one string in another string

`'''This "Python class very helpful" for java students''' `

"Python Data Types Check"

"Python Data Types Size"

"Python Data Structures"

"Data Types In Python With Examples"

"Built-In Data Types In Python"

"Python Data Types Cheat Sheet"