If you have data with name of customers and their location, which data type will you use to store it in Python?

In Python, we can use dict data type to store key value pairs. In this example, customer name can be the key and their location can be the value in a dict data type.

Dictionary is an efficient way to store data that can be looked up based on a key.

What is the output of following code in Python?

>>>name=’John Smith’
>>>print name[:5] + name[5:]

Ans: Output of this will be
John Smith

This is an example of Slicing. Since we are slicing at the same index, the first name[:5] gives the substring name upto 5th location excluding 5th location. The name[5:] gives the rest of the substring of name from the 5th location. So we get the full name as output.

What is the output of following code in Python?

>>> thelist=[‘a’,’b’]
>>> print thelist[3:]

Ans: The output of this code is following:
[]

Even though the list has only 2 elements, the call to thelist with index 3 does not give any index error.

What are the popular Python libraries used in Data analysis?

    Some of the popular libraries of Python used for Data analysis are:

  • Pandas: Powerful Python Data Analysis Toolkit
  • SciKit: This is a machine learning library in Python.
  • Seaborn: This is a statistical data visualization library in Python.
  • SciPy: This is an open source system for science, mathematics and engineering implemented in Python.

How will you execute a Python script in Unix?

To execute a Python script in Unix, we need to have Python executor in Unix environment.

In addition to that we have to add following line as the first line in a Python script file.

#!/usr/local/bin/python

This will tell Unix to use Python interpreter to execute the script.

What is the improvement in enumerate() function of Python?

In Python, enumerate() function is an improvement over regular iteration. The enumerate() function returns an iterator that gives (0, item[0]).

E.g.
>>> thelist=[‘a’,’b’]
>>> for i,j in enumerate(thelist):
… print i,j

0 a
1 b

How can we do Functional programming in Python?

In Functional Programming, we decompose a program into functions. These functions take input and after processing give an output. The function does not maintain any state.

Python provides built-in functions that can be used for Functional programming. Some of these functions are:

  • Map()
  • reduce()
  • filter()
  • Event iterators and generators can be used for Functional programming in Python.

    How will you share variables across modules in Python?

    We can create a common module with variables that we want to share.

    This common module can be imported in all the modules in which we want to share the variables.

    In this way, all the shared variables will be in one module and available for sharing with any new module as well.

    What is the difference between ‘is’ and ‘==’ in Python?

    We use ‘is’ to check an object against its identity.

    We use ‘==’ to check equality of two objects.

    E.g.

    >>> lst = [10,20, 20]
    >>> lst == lst[:]
    True

    >>> lst is lst[:]
    False

    How do you profile a Python script?

    Python provides a profiler called cProfile that can be used for profiling Python code.

    We can call it from our code as well as from the interpreter.

    It gives use the number of function calls as well as the total time taken to run the script.

    We can even write the profile results to a file instead of standard out.