Python

1. What is python?

Python is a high-level, interpreted, interactive and object-oriented scripting
language. Python is designed to be highly readable. It uses English
keywords frequently where as other languages use punctuation, and it has fewer syntactical constructions than other languages.

2. What are the key features of Python?

  • Python is an interpreted language. That means that, unlike languages like C and its variants, Python does not need to be compiled before it is run. Other interpreted languages include PHP and Ruby.
  • Python is dynamically typed, this means that you don’t need to state the types of variables when you declare them or anything like that. You can do things like x=111 and then x=”I’m a string” without error
  • Python is well suited to object orientated programming in that it allows the definition of classes along with composition and inheritance. Python does not have access specifies (like C++’s public, private).
  • In Python,
  • Functions are first-class objects. This means that they can be assigned to variables, returned from other functions and passed into functions. Classes are also first class objects
  • Writing Python code is quick but running it is often slower than compiled languages. Fortunately Python allows the inclusion of C based extensions so bottlenecks can be optimized away and often are. The numpy package is a good example of this, it’s really quite quick because a lot of the number crunching it does isn’t actually done by Python
  • Python finds use in many spheres – web applications, automation scientific modeling, big data applications and many more. It’s also often used as “glue” code to get other languages and components to play nice.

3. What is the difference between list and tuples in Python?

LIST TUPLES

Lists are mutable i.e. they can
be edited.

Tuples are immutable (tuples are lists
which can’t be edited).
Lists are slower than tuples. Tuples are faster than list.
Syntax: list_1 = [10, ‘Chelsea’,
20] Syntax: tup_1 = (10, ‘Chelsea’ , 20)

4. What type of language is python? Programming or scripting?

 Python is capable of scripting, but in general sense, it is considered
as a general-purpose programming language. A scripting language is a
programming language that uses an Interpreter to translate its source code. A Python script normally can be full of functions that can be imported as a library of functions.

5. How is Python an interpreted language?

An interpreted language is any programming language which is not in
machine level code before runtime. Therefore, Python is an interpreted language.

6. What is pep 8?

PEP stands for Python Enhancement Proposal. It is a set of rules that specify how to format Python code for maximum readability.

7. How is memory managed in Python?

Memory management in python is managed by Python private heap space. All Python objects and data structures are located in a private heap. The programmer does not have access to this private heap. The python interpreter takes care of this instead.
The allocation of heap space for Python objects is done by Python’s
memory manager. The core API gives access to some tools for the
programmer to code.
Python also has an inbuilt garbage collector, which recycles all the unused memory and so that it can be made available to the heap space.

8. What is namespace in Python?

A namespace is a naming system used to make sure that names are
unique to avoid naming conflicts.

What is PYTHONPATH?
Ans: It is an environment variable which is used when a module is
imported. Whenever a module is imported, PYTHONPATH is also looked
up to check for the presence of the imported modules in various directories.
The interpreter uses it to determine which module to load.

What are python modules? Name some commonly used built-in
modules in Python?
Ans: Python modules are files containing Python code. This code can
either be functions classes or variables. A Python module is a .py file
containing executable code.
Some of the commonly used built-in modules are:
 os
 sys
 math
 random
 data time
 JSON

What are local variables and global variables in Python?
Global Variables:
Variables declared outside a function or in global space are called global
variables. These variables can be accessed by any function in the program.
Local Variables:
Any variable declared inside a function is known as a local variable. This
variable is present in the local space and not in the global space.

1
2
3
4
5
6

a=2
def add():
b=3
c=a+b
print(c)
add()

Example:

Output: 5
When you try to access the local variable outside the function add (), it will
throw an error.

  1. Is python case sensitive?
    Ans: Yes. Python is a case sensitive language.
    13.What is type conversion in Python?
    Ans: Type conversion refers to the conversion of one data type into
    another.
    Int () – converts any data type into integer type
    float () – converts any data type into float type
    Ord () – converts characters into integer
    hex () – converts integers to hexadecimal

Oct () – converts integer to octal
Tuple () – This function is used to convert to a tuple.
Set () – This function returns the type after converting to set.
List () – This function is used to convert any data type to a list type.
Dict () – This function is used to convert a tuple of order (key,value) into a
dictionary.
str () – Used to convert integer into a string.
Complex (real, imag) – This function converts real numbers to complex
(real, imag) number.

  1. How to install Python on Windows and set path variable?
    Ans: To install Python on Windows, follow the below steps:
     Install python from this link: https://www.python.org/downloads/
     After this, install it on your PC. Look for the location where PYTHON
    has been installed on your PC using the following command on your
    command prompt: cmd python. 
     Then go to advanced system settings and add a new variable and
    name it as PYTHON_NAME and paste the copied path.
     Look for the path variable, select its value and select ‘edit’.
     Add a semicolon towards the end of the value if it’s not present and
    then type %PYTHON_HOME% 
  2. Is indentation required in python?
    Ans: Indentation is necessary for Python. It specifies a block of code. All
    code within loops, classes, functions, etc. is specified within an indented
    block. It is usually done using four space characters. If your code is not
    indented necessarily, it will not execute accurately and will throw errors as
    well.
  3. What is the difference between Python Arrays and lists?

Ans: Arrays and lists, in Python, have the same way of storing data. But,
arrays can hold only a single data type elements whereas lists can hold any
data type elements.

1
2
3
4
5

import array as arr
My_Array=arr.array(‘i’,[1,2,3,4])
My_list=[1,’abc’,1.20]
print(My_Array)
print(My_list)

Example:

Output:
array (‘i’, [1, 2, 3, 4]) [1, ‘abc’, 1.2]

  1. What are functions in Python?
    Ans: A function is a block of code which is executed only when it is called.
    To define a Python function, the def keyword is used.

1
2
3

def Newfunc():

print(“Hi, Welcome to kodnest”)
Newfunc(); #calling the function

Example:

Output: Hi, Welcome to kodnest

  1. What is init?
    Ans: init is a method or constructor in Python. This method is
    automatically called to allocate memory when a new object/ instance of a
    class is created. All classes have the init method.
    Here is an example of how to use it.
    1
    2
    3
    4
    5
    6
    7

class Employee:

def. init(self, name, age, salary):

self.name = name
self. Age = age
self. Salary = 20000
E1 = Employee(“XYZ”, 23, 20000)

E1 is the instance of class Employee.

8
9
10
11

init allocates memory for E1.

print(E1.name)
print(E1.age)
print(E1.salary)

Output:

XYZ
23
20000

  1. What is a lambda function?
    Ans: An anonymous function is known as a lambda function. This function
    can have any number of parameters but, can have just one statement.

1
2

a = lambda x,y : x+y
print(a(5, 6))

Example:

Output: 11

  1. what is self in python programming language?

Ans: Self is an instance or an object of a class. In Python, this is explicitly
included as the first parameter. However, this is not the case in Java where
it’s optional.  It helps to differentiate between the methods and attributes of
a class with local variables.
The self-variable in the init method refers to the newly created object while
in other methods, it refers to the object whose method was called.

Break Allows loop termination when some condition is met and the control is

transferred to the next statement.

Continue Allows skipping some part of a loop when some specific condition is met and

the control is transferred to the beginning of the loop

Pass Used when you need some block of code syntactically, but you want to skip

its execution. This is basically a null operation. Nothing happens when this is
executed.

21. How does break, continue and pass work?

22. What does [::-1} do?
Ans: [::-1] is used to reverse the order of an array or a sequence.
For example:
1
2
3

import array as arr
My_Array=arr.array(‘i’,[1,2,3,4,5])

My_Array[::-1]

Output: array (‘i’, [5, 4, 3, 2, 1])
[::-1] reprints a reversed copy of ordered data structures such as an array
or a list. the original array or list remains unchanged.
 

  1. How can you randomize the items of a list in place in
    Python?

1
2
3
4

from random import shuffle

x = [‘Keep’, ‘The’, ‘Blue’, ‘Flag’, ‘Flying’, ‘High’]

shuffle(x)
print(x)
Ans: Consider the example shown below:

The output of the following code is as below.
[‘Flying’, ‘Keep’, ‘Blue’, ‘High’, ‘The’, ‘Flag’]

  1. What are python iterators?
    Ans: Iterators are objects which can be traversed though or iterated upon.
  2. How can you generate random numbers in Python?

1
2

import random
random. Random

Ans: Random module is the standard module that is used to generate a
random number. The method is defined as:
The statement random. Random () method return the floating point number
that is in the range of [0, 1). The function generates random float numbers.
The methods that are used with the random class are the bound methods
of the hidden instances. The instances of the Random can be done to show
the multi-threading programs that creates a different instance of individual
threads. The other random generators that are used in this are:

  1. Ran range (a, b): it chooses an integer and define the range in-between

[a, b). It returns the elements by selecting it randomly from the range
that is specified. It doesn’t build a range object.

  • uniform(a, b): it chooses a floating point number that is defined in the
    range of [a,b).Iyt returns the floating point number
  • Normal variate (mean, sdev): it is used for the normal distribution where
    the mu is a mean and the sdev is a sigma that is used for standard
    deviation.
  • The Random class that is used and instantiated creates an independent
    multiple random number generators.
  • What is the difference between range & xrange?
    Ans: For the most part, xrange and range are the exact same in terms of
    functionality. They both provide a way to generate a list of integers for you
    to use, however you please. The only difference is that range returns a
    Python list object and x range returns an xrange object.
    This means that xrange doesn’t actually generate a static list at run-time
    like range does. It creates the values as you need them with a special
    technique called yielding. This technique is used with a type of object
    known as generators. That means that if you have a really gigantic range
    you’d like to generate a list for, say one billion, xrange is the function to
    use.
    This is especially true if you have a really memory sensitive system such as
    a cell phone that you are working with, as range will use as much memory
    as it can to create your array of integers, which can result in a Memory
    Error and crash your program. It’s a memory hungry beast.
  • How do you write comments in python?
  • Ans: Comments in Python start with a # character. However, alternatively
    at times, commenting is done using doc strings(strings enclosed within
    triple quotes).
    Example:

    Comments in Python start like this

    print("Comments in Python start with a #")
    Output:  Comments in Python start with a #

    1. What is pickling and unpickling?
      Ans: Pickle module accepts any Python object and converts it into a string
      representation and dumps it into a file by using dump function, this process
      is called pickling. While the process of retrieving original Python objects
      from the stored string representation is called unpickling.
    2. What are the generators in python?
      Ans: Functions that return an iterable set of items are called generators.
    3. How will you capitalize the first letter of string?
      Ans: In Python, the capitalize () method capitalizes the first letter of a
      string. If the string already consists of a capital letter at the beginning, then,
      it returns the original string.
    4. How will you convert a string to all lowercase?
      Ans: To convert a string to lowercase, lower () function can be used.
      Example:
      1
      2

    stg='ABCD'
    print(stg.lower())
    Output: abcd

    1. How to comment multiple lines in python?
      Ans: Multi-line comments appear in more than one line. All the lines to be
      commented are to be prefixed by a #. You can also a very good shortcut
      method to comment multiple lines. All you need to do is hold the ctrl key
      and left click in every place wherever you want to include a # character

    and type a # just once. This will comment all the lines where you introduced
    your cursor.

    1. What are docstrings in Python?
      Ans: Docstrings are not actually comments, but, they are documentation
      strings. These docstrings are within triple quotes. They are not assigned to
      any variable and therefore, at times, serve the purpose of comments as
      well.

    1
    2
    3
    4
    5
    6
    7
    8
    """
    Using docstring as a comment.
    This code divides 2 numbers
    """
    x=8
    y=4
    z=x/y
    print(z)
    Example:
    Output: 2.0

    1. What the purpose is of is, not and in operators?
      Ans: Operators are special functions. They take one or more values and
      produce a corresponding result.
      is: returns true when 2 operands are true  (Example: “a” is ‘a’)
      not: returns the inverse of the boolean value
      in: checks if some element is present in some sequence
      35. What is the usage of help () and dir() function in Python?
      Ans: Help() and dir() both functions are accessible from the Python
      interpreter and used for viewing a consolidated dump of built-in functions. 
    2. Help() function: The help() function is used to display the
      documentation string and also facilitates you to see the help related to
      modules, keywords, attributes, etc.
    3. Dir() function: The dir() function is used to display the defined symbols.
    4. Whenever Python exits, why isn’t all the memory de-
      allocated?
      Ans: 
    5. Whenever Python exits, especially those Python modules which are
      having circular references to other objects or the objects that are
      referenced from the global namespaces are not always de-allocated
      or freed.
    6. It is impossible to de-allocate those portions of memory that are
      reserved by the C library.
    7. On exit, because of having its own efficient clean up mechanism,
      Python would try to de-allocate/destroy every other object.
    8. What is a dictionary in Python?
      Ans: The built-in data types in Python is called dictionary. It defines one-to-
      one relationship between keys and values. Dictionaries contain pair of keys
      and their corresponding values. Dictionaries are indexed by keys.
      Let’s take an example:
      The following example contains some keys. Country, Capital & PM. Their
      corresponding values are India, Delhi and Modi respectively.
      1 dict={'Country':'India','Capital':'Delhi','PM':'Modi'}
      1 print dict[Country]

      1 print dict[Capital]
      India
      1 print dict[PM]
      Delhi
      Modi
      38. How can the ternary operators be used in python?
      Ans: The Ternary operator is the operator that is used to show the
      conditional statements. This consists of the true or false values with a
      statement that has to be evaluated for it.
      Syntax:

      The Ternary operator will be given as:

      [on true]

      if [expression] else [on false]x, y = 25, 50big = x if x < y else y
      Example:
      The expression gets evaluated like if x<y else y, in this case if x<y is true
      then the value is returned as big=x and if it is incorrect then big=y will be
      sent as a result.

      1. What does this mean: *args, **kwargs? And why would
        we use it?
        Ans: We use *args when we aren’t sure how many arguments are going to
        be passed to a function, or if we want to pass a stored list or tuple of
        arguments to a function. **kwargs is used when we don’t know how many
        keyword arguments will be passed to a function, or it can be used to pass
        the values of a dictionary as keyword arguments. The identifiers args and
        kwargs are a convention, you could also use *bob and **billy but that would
        not be wise.
      2. What does len () do?
        Ans: It is used to determine the length of a string, a list, an array, etc.
        Example:
        1
        2

      stg=’ABCD’
      len(stg)

      1. Explain split (), sub (), subn () methods of “re” module in
        Python.
        Ans: To modify the strings, Python’s “re” module is providing 3 methods.
        They are:
         split () – uses a regex pattern to “split” a given string into a list.
         sub() – finds all substrings where the regex pattern matches and then
        replace them with a different string
         Subn () – it is similar to sub () and also returns the new string along
        with the no. of replacements.
        42 What is PIP software in the Python world?
        Answer: PIP is an acronym for Python Installer Package which
        provides a seamless interface to install various Python modules. It is

      a command line tool which can search for packages over the internet
      and install them without any user interaction.

      1. What should be the typical build environment for Python based
        application development?
        Answer: You just need to install Python software and using PIP, you
        can install various Python modules from the open source community.
        For IDE, Pycharm is highly recommended for any kind of application
        development with vast support for plugins. Another basic IDE is
        called a RIDE and is a part of the Python open source community.
      2. What tools can be used to unit test your Python code?
        Answer: The best and easiest way is to use ‘unit test’ python
        standard library to test units/classes. The features supported are very
        similar to the other unit testing tools such as JUnit, TestNG.
      3. How does for loop and While loop differ in Python and when do
        you choose to use them?
        Answer: For loop is generally used to iterate through the elements of
        various collection types such as List, Tuple, Set, and Dictionary.
        While loop is the actual looping feature that is used in any other
        programming language. This is how Python differs in handling loops
        from the other programming languages.
        46 How are data types defined in Python and how much bytes do
        integer and decimal data types hold?
        Answer: In Python, there is no need to define a variable’s data type
        explicitly.
        Based on the value assigned to a variable, Python stores the
        appropriate data type. In the case of numbers such as Integer, Float,
        etc, the length of data is unlimited.
        47) How do you make use of Arrays in Python?
        Answer: Python does not support Arrays. However, you can use List
        collection type which can store an unlimited number of elements.
        48) How do you implement JSON given that Python is best suited for
        the server-side application?
        Answer: Python has built-in support to handle JSON objects.

      You just have to import the JSON module and use the functions such
      as loads and dumps to convert from JSON string to JSON object and
      vice versa. It is a straightforward way to handle and exchange JSON
      based data from the server-side.
      49) What is the best way to parse strings and find patterns in Python?
      Answer: Python has built-in support to parse strings using Regular
      expression module. Import the module and use the functions to find a
      sub-string, replace a part of a string, etc.
      50) Which databases are supported by Python?
      Answer: MySQL (Structured) and MongoDB (Unstructured) are the
      prominent databases that are supported natively in Python. Import
      the module and start using the functions to interact with the database.
      51) What is the purpose of init () function in Python?
      Answer: It is the first function that gets executed when an object of a
      class is instantiated. This is equivalent to the constructor concept in
      C++.
      52) What is the significance of ‘self’ parameter in an object method?
      Should we always name this parameter as ‘self’?
      Answer: Parameter ‘self’ is used to refer to the object properties of a
      class.
      Self’ parameter is supposed to be prefixed to the class object
      properties. The answer to the second part of the question is No. ‘Self’
      parameter can have any name.
      53) How does Lambda function differ from a normal function in
      Python?
      Answer: Lambda is similar to the inline function in C programming. It
      returns a function object. It contains only one expression and can
      accept any number of arguments.
       In case of a normal function, you can define a function name, pass
      the parameter and mandatorily have a return statement. The Lambda
      function can be typically used for simple operations without the use of
      function names. It can also be used in the place of a variable.
      54) How is Exception Handling done in Python?

      Answer: There are 3 main keywords i.e. try, except and finally which
      are used to catch exceptions and handle the recovering mechanism
      accordingly. Try is the block of a code which is monitored for errors.
      Except block gets executed when an error occurs.
      The beauty of the final block is to execute the code after trying for
      error. This block gets executed irrespective of whether an error
      occurred or not. Finally block is used to do the required cleanup
      activities of objects/variables.
      55) What is the starting point of Python code execution?
      Answer: As Python is an interpreter, it starts reading the code from
      the source file and starts executing them.
      However, if you want to start from the main function, you should
      have the following special variable set in your source file as:
      if__name__== “main
      main ()
      56) Name some of the important modules that are available in Python.
      Answer: Networking, Mathematics, Cryptographic services, Internet
      data handling, and Multi-threading modules are prominent modules.
      Apart from these, there are several other modules that are available
      in the Python developer community
      57) Which module(s) of Python can be used to measure the
      performance of your application code?
      Answer: Time module can be used to calculate the time at different
      stages of your application and use the Logging module to log data to
      a file system in any preferred format.
      58) How do you launch sub-processes within the main process of a
      Python application?
      Answer: Python has a built-in module called sub-process. You can
      import this module and either use run () or Popen () function calls to
      launch a sub-process and get the control of its return code.
      59) As Python is more suitable for the server-side application, it is
      very important to have threading implemented in your server code.
      How can you achieve that in Python?
      Answer: We should use the threading module to implement, control
      and destroy threads for parallel execution of the server code. Locks

      and Semaphores are available as synchronization objects to manage
      data between different threads.
      60) Do we need to call the explicit methods to destroy the memory
      allocated in Python?
      Answer: Garbage collection is an in-built feature in Python which
      takes care of allocating and de-allocating memory. This is very similar
      to the feature in Java.
      Hence, there are very fewer chances of memory leaks in your
      application code.
      61) Does the same Python code work on multiple platforms without
      any changes?
      Answer: Yes. As long as you have the Python environment on your
      target platform (Linux, Windows, Mac), you can run the same code.
      62) How can you create a GUI based application in Python for client-
      side functionality?
      Answer: Python along with standard library Tkinter can be used to
      create GUI based applications. Tkinter library supports various
      widgets which can create and handle events which are widget
      specific.
      63) What are the different environment variables identified by Python?
      Answer:
      PYTHONPATH: This environment variable helps the interpreter as to
      where to locate the module files imported in the program.
      PYTHONSTARTUP: This environment variable contains the path of
      the Initialization file containing source code.
      PYTHONCASEOK: This variable is used to find the first case-
      insensitive match in the import statement
      64) What is Python Tuples and how is it different from Lists?
      Answer: Tuples is basically a sequence of elements which are
      separated by commas and are enclosed in parenthesis.
      Lists whereas is a sequence of elements which are separated by
      commas and are enclosed in brackets. Also, Tuples cannot be
      updated whereas, in lists, elements can be updated along with their
      sizes.
      65) What does ‘#’ symbol do in Python?

      Answer: ‘#’ is used to comment out everything that comes after on
      the line.
      Example:
      Print (“I am a beginner in Python”)

      print (“I am a beginner in Python”)

      Output:
      I am a beginner in Python
      66) What does stringVar.strip () does?
      Answer: This is one of the string methods which removes
      leading/trailing white space.
      67) What should be the output of the following code?
      a=”python tutorial”
      Print (‘%. 6s’ % a)
      Answer: Output should be: python
      68) Write a command to read:
      a. ‘10’ characters from a file
      b. Read entire file
      c. Write output after executing both commands together.
      Where the file name is “softwaretestinghelp.txt”.
      File text:
      Python is a powerful high-level, object-oriented programming
      language created by Guido van Rossum.
      It has simple easy-to-use syntax, making it the perfect language for
      someone trying to learn computer programming for the first time.
      Answer:
      f = open (“softwaretestinghelp.txt “, “r”)
      print (f. read (10))
      Print (f. read ())
      Output:
      Python
       is a powerful high-level, object-oriented programming language
      created by Guido van Rossum.
       It has simple easy-to-use syntax, making it the perfect language for
      someone trying to learn computer programming for the first time.

      69) What are membership operators in Python? Write an example to
      explain both.
      Answer: There are 2 types of membership operators in Python:
      in: If the value is found in a sequence, then the result becomes true
      else false
      not in: If the value is not found in a sequence, then the result
      becomes true else false
       Example:
      1 a=1
      5
      2 b=3
      0
      3 list= [3,6,15,20,3
      0];
      4  
      5 if (a in list)
      6 print “a is available in given list

      7 Else
      8 print “a is not available in given list”
      9  
      1
      0 if (b not in list)
      1
      1 print “b is not available in given list”
      1
      2 Else
      1
      3 print “b is available in given list”
      Output:
      a is available in given list
      b is available is list
       Write a code to display the current time.
      Answer:
      Current time= time.localtime(time. Time ())
      print (“Current time is”, current time)

      70) What is the output of print str[4: ] if str = ‘ Python Language’?
      Answer:
      Output: on Language
      71) Write the command to get all keys from the dictionary.
      Answer: print dict.keys ()
      72) Write a command to convert a string into an int in python.
      Answer: int(x [, base])
      73) What are a help () and dir () in python?
      Answer: help () is a built-in function that can be used to return the Python
      documentation of a particular object, method, attributes, etc.
      dir () displays a list of attributes for the objects which are passed as
      an argument. If dir () is without the argument then it returns a list of
      names in current local space.
      74) What does the term ‘Monkey Patching’ refers to in Python?
      Answer: Monkey Patching refers to the modification of a module at run-
      time.
      75) What do you mean by ‘suites’ in Python?
      Answer: The group of individual statements, thereby making a logical
      block of code is called suites
      Example:
      If expression
      Suite
      Else
      Suite
      76) What is range () in Python? Give an example to explain it.
      Answer: It is a function to iterate over a sequence of numbers.
      Example:
      for var in list(range (10))
      Print (var)
      77) What is the difference between abs () and fabs ()?
      Answer: abs () is a built-in function which works with integer, float
      and complex numbers also.

      Fabs () is defined in math module which doesn’t work with complex
      numbers.
      78) Write the output for the following code:
      Code:
      str = “Python is a programming language”
      Print (str.isalnum ())
      str = “This is Interview Question17”
      Print (str.isalnum ())
      Answer: False
      True
      79) What is a from import statement and write the syntax for it?
      Answer: From statement allows specific attributes to be imported
      from a module in a current namespace.
      Syntax: from mod name import name1 [, name2 [… nameN]]
      80) What is the difference between locals () and globals ()?
      Answer: locals () is accessed within the function and it returns all
      names that can be accessed locally from that function.
      globals () returns all names that can be accessed globally from that
      function.
      81) What is the use of Assertions in Python?
      Answer: Assert statement is used to evaluate the expression attached.
      If the expression is false, then python raised Assertion Error Exception.
      82) What is the difference between ‘match’ and ‘search’ in Python?
      Answer: Match checks for the match at the beginning of the string whereas
      search checks for the match anywhere in the string
      83) What is the difference between a shallow copy and deep copy?
      Answer: Shallow copy is used when a new instance type gets created and
      it keeps values that are copied whereas deep copy stores values that are
      already copied.
      A shallow copy has faster program execution whereas deep coy
      makes it slow.

      84) What statement is used in Python if the statement is required
      syntactically but no action is required for the program?
      Answer: Pass statement
      Example:
      If (a>10)
      Print (“Python”)
      Else
       Pass

      1. Define encapsulation in Python and explain with example?
        Ans: Encapsulation means binding the code and the data together. A
        Python class in an example of encapsulation.
        Encapsulation example
        Python does not have the private keyword, unlike some other object
        oriented languages, but encapsulation can be done.
        Instead, it relies on the convention: a class variable that should not directly
        be accessed should be prefixed with an underscore.

      class Robot(object):
      def init(self):
      self.a = 123
      self._b = 123
      self.__c = 123
      obj = Robot()
      print(obj.a)
      print(obj._b)
      print(obj.__c)
      If you run the program you see:

      123
      123
      Traceback (most recent call last):

      File “test.py”, line 10, in &lt;module&gt;
      print(obj.__c)
      AttributeError: ‘Robot’ object has no attribute ‘__c’
      So what’s with the underscores and error?
      A single underscore: Private variable, it should not be accessed directly.
      But nothing stops you from doing that (except convention).
      A double underscore: Private variable, harder to access but still possible.
      Both are still accessible: Python has private variables by convention.
      Getters and setters
      Private variables are intended to be changed using getter and setter
      methods. These provide indirect access to them:

      class Robot(object):
      def init(self):
      self.__version = 22
      def getVersion(self):
      print(self.__version)
      def setVersion(self, version):
      self.__version = version
      obj = Robot()
      obj.getVersion()
      obj.setVersion(23)
      obj.getVersion()
      print(obj.__version)
      This then outputs the variables values:

      22
      23

      The class with private attribute and methods

      1. How do you do data abstraction in Python?
        Ans: Data Abstraction is providing only the required details and hiding the
        implementation from the world. It can be achieved in Python by using
        interfaces and abstract classes.
      2. Does python make use of access specifies?
        Ans: Python does not deprive access to an instance variable or function.
        Python lays down the concept of prefixing the name of the variable,
        function or method with a single or double underscore to imitate the
        behavior of protected and private access specifiers.  
      3. How to create an empty class in Python? 
        Ans: An empty class is a class that does not have any code defined within
        its block. It can be created using the pass keyword. However, you can
        create objects of this class outside the class itself. IN PYTHON THE PASS
        command does nothing when it’s executed. It’s a null statement. 
        For example-
        1
        2
        3
        4
        5

      class a:
          pass
      obj=a()
      obj.name=”xyz”
      print(“Name = “,obj.name)

      Output: 
      Name = xyz

      1. What does an object () do?
        Ans:  It returns a featureless object that is a base for all classes. Also, it
        does not take any parameters.

      Basic Python Programs

      1. Write a program in Python to execute the Bubble sort algorithm.
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10

      def bs(a):             # a = name of list

      b=len(a)-1         # minus 1 because we always compare 2 adjacent values

      for x in range(b):
      for y in range(b-x):
      if a[y]>a[y+1]:
      a[y],a[y+1]=a[y+1],a[y]
      return a
      a=[32,5,3,6,7,54,87]
      bs(a)

      Output:  [3, 5, 6, 7, 32, 54, 87]

      1
      2
      3
      4

      def pyfunc(r):
          for x in range(r):
              print(‘ ‘(r-x-1)+’(2x+1))   

      pyfunc(9)

      1. Write a program in Python to produce Star triangle.

      Output:

      *









      1. Write a program to produce Fibonacci series in Python.
        1
        2
        3

      Enter number of terms needed                   #0, 1, 1,2,3,5….

      a=int(input(“Enter the terms”))

      f=0                                         #first element of series

      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14

      s=1                                         #second element of series

      if a<=0:

          print(“The requested series is

      “,f)
      else:
          print(f,s,end=” “)
          for x in range(2,a):
              next=f+s                          
              print(next,end=” “)
              f=s
              s=next</pre>

       
      Output: Enter the terms 5 0 1 1 2 3

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10

      a=int(input(“enter number”))     

      if a>1:
          for x in range(2,a):
              if(a%x)==0:
                  print(“not prime”)
                  break
          else:
              print(“Prime”)
      else:
          print(“not prime”)

      1. Write a program in Python to check if a number is prime.

      Output:
      Enter number 3
      Prime

      1
      2
      3
      4
      5
      6

      a=input(“enter sequence”)

      b=a[::-1]
      if a==b:
          print(“palindrome”)

      else:

          print(“Not a Palindrome”)

      1. Write a program in Python to check if a sequence is a Palindrome.

      Output:
      Enter sequence 323 palindrome

      1. Write a one-liner that will count the number of capital letters in a
        file. Your code should work even if the file is too big to fit in memory.
        Ans:  Let us first write a multiple line solution and then convert it to one-
        liner code.
        1
        2
        3
        4
        5
        6

      with open(SOME_LARGE_FILE) as fh:

      count = 0
      text = fh.read()
      for character in text:
          if character.isupper():
      count += 1
      We will now try to transform this into a single line.
      1 count sum(1 for line in fh for character in line if character.isupper())

      1. Write a sorting algorithm for a numerical dataset in Python.
        Ans: The following code can be used to sort a list in Python:
        1
        2
        3
        4

      list = [“1”, “4”, “0”, “6”, “9”]
      list = [int(i) for i in list]
      list. Sort()
      print (list)

      1. Looking at the below code, write down the final values of A0, A1
        …An.
        1
        2
        3
        4
        5
        6
        7

      A0 = dict(zip((‘a’,’b’,’c’,’d’,’e’),(1,2,3,4,5)))
      A1 = range(10)A2 = sorted([i for i in A1 if i in A0])

      A3 = sorted([A0[s] for s in A0])
      A4 = [i for i in A1 if i in A3]
      A5 = {i:ii for i in A1} A6 = [[i,ii] for i in A1]
      print(A0,A1,A2,A3,A4,A5,A6)
      Ans: The following will be the final outputs of A0, A1 … A6
      A0 = {‘a’: 1, ‘c’: 3, ‘b’: 2, ‘e’: 5,’d’: 4} # the order may vary
      A1 = range (0, 10)

      A2 = []
      A3 = [1, 2, 3, 4, 5]
      A4 = [1, 2, 3, 4, 5]
      A5 = {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}
      A6 = [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16], [5, 25], [6, 36], [7, 49], [8, 64], [9,
      81]]

    Related Articles

    Core Java

    1. What are primitive types in Java ? byte, short, int, long, float, double, char, boolean… 2. What are tokens? Name the 5 types of tokens available in Java with an example…

    Hackerearth-Java

         1. Challenge : Welcome to Java! Welcome to the world of Java! In this challenge, we practice printing to stdout. The code stubs…

    Hackerearth-Algorithm

          1. Challenge: Quicksort 1 – Partition The previous challenges covered Insertion Sort, which is a simple and intuitive sorting algorithm with a running…

    Responses

    Your email address will not be published. Required fields are marked *

    KodNest Training New Batch is starting on 21st September 2020. Attend one week free demo classes.Register Now

    New Report

    Close