Top 10 Basic Python Programming Interview Questions

Python is one of the most popular and widely used programming language.
It is used in web development, machine learning, desktop applications, game development, web scraping, web automation and many other fields.
Many Tech Giants like Google, Amazon, Facebook etc are using python and and hire people having knowledge and skills like Python.
It is a high-level language which is easy to learn for computer programmers. We have prepared a list of Top 10 commonly asked interview questions related to basic python programming.

Python Interview Questions For Freshers

  1. What is an interpreted programming language?
    An Interpreted language executes its statements line by line. Languages like Python, Javascript, R, PHP, and Ruby are prime examples of Interpreted languages. Programs written in an interpreted language runs directly from the source code, with no intermediary compilation step.

  2. What are modules and packages in Python?
    Python packages and Python modules are two mechanisms that allow for modular programming in Python. Modularizing has several advantages –
    a. Simplicity: Working on a single module helps you focus on a relatively small portion of the problem at hand. This makes development easier and less error-prone.
    b. Maintainability: Modules are designed to enforce logical boundaries between different problem domains. If they are written in a manner that reduces interdependency, it is less likely that modifications in a module might impact other parts of the program.
    c. Reusability: Functions defined in a module can be easily reused by other parts of the application.
    d. Scoping: Modules typically define a separate namespace, which helps avoid confusion between identifiers from other parts of the program.

    Modules, in general, are simply Python files with a .py extension and can have a set of functions, classes, or variables defined and implemented. They can be imported and initialized once using the import statement. If partial functionality is needed, import the requisite classes or functions using from foo import bar.

    Packages allow for hierarchical structuring of the module namespace using dot notation. As modules help avoid clashes between global variable names, in a similar manner, packages help avoid clashes between module names.
    Creating a package is easy since it makes use of the system’s inherent file structure. So just stuff the modules into a folder and there you have it, the folder name as the package name. Importing a module or its contents from this package requires the package name as prefix to the module name joined by a dot.

  3. What are global, protected and private attributes in Python?

    • Global variables are public variables that are defined in the global scope. To use the variable in the global scope inside a function, we use the global keyword.

    • Protected attributes are attributes defined with an underscore prefixed to their identifier eg. __prep. They can still be accessed and modified from outside the class they are defined in but a responsible developer should refrain from doing so.

    • Private attributes are attributes with double underscore prefixed to their identifier eg. __bytes. They cannot be accessed or modified from the outside directly and will result in an AttributeError if such an attempt is made.

  4. What is the use of self in Python?
    Self is used to represent the instance of the class. With this keyword, you can access the attributes and methods of the class in python. It binds the attributes with the given arguments. self is used in different places and often thought to be a keyword. But unlike in C++, self is not a keyword in Python.

  5. What is the difference between Python Arrays and lists?

    • Arrays in python can only contain elements of the same data types i.e., data type of array should be homogeneous. It is a thin wrapper around C language arrays and consumes far less memory than lists.
    • Lists in python can contain elements of different data types i.e., data type of lists can be heterogeneous. It has the disadvantage of consuming large amounts of memory.
      import array
      a = array.array('i', [1, 2, 3])
      for i in a:
          print(i, end=' ')    
      #OUTPUT: 1 2 3
      a = array.array('i', [1, 2, 'string'])
      #OUTPUT: TypeError: an integer is required (got type str)
      a = [1, 2, 'string']
      for i in a:
          print(i, end=' ')
      #OUTPUT: 1 2 string
      
  6. What is slicing in Python?

    • As the name suggests, ‘slicing’ is taking parts of.
    • Syntax for slicing is [start : stop : step]
    • start is the starting index from where to slice a list or tuple
    • stop is the ending index or where to stop.
    • step is the number of steps to jump.
    • Default value for start is 0, stop is number of items, step is 1.
    • Slicing can be done on strings, arrays, lists, and tuples.
      numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
      print(numbers[1 : : 2])
      #output : [2, 4, 6, 8, 10]
      
  7. Write a program to print the following pattern.

    def triangle(n):
    	k = n - 1
    	for i in range(0, n):
    		for j in range(0, k):
    			print(end=" ")
    		k = k - 1
    		for j in range(0, i+1):
    			print("* ", end="")
    		print("\r")
    n = 5
    triangle(n)
    

  8. Write a program to reverse a given integer in Python.

    n = int(input("please give a number : "))
    print("before reverse your numeber is :", n)
    reverse = 0
    while n!=0:
        reverse = reverse*10 + n%10       
        n = (n//10)
    print("After reverse :", reverse)
    

  9. Write a program to check if the given number is prime or not in Python.

    i,temp=0,0
    n = int(input("Enter a Number : "))
    for i in range(2,n//2):
        if n%i == 0:
            temp=1
            break
    if temp == 1:
        print("given number is not prime")
    else:
        print("given number is prime")
    

  10. Write a program to check if the given number is armstrong or not in Python.

    i=0
    result=0
    n = int(input("Enter a Number : "))
    number1 = n
    temp = n
    while n!=0:
        n = (n//10)
        i=i+1;
    while number1!=0:
        n=number1%10
        result=result+pow(n,i)
        number1=number1//10
    if temp==result:
        print("number is armstrong")
    else:
        print("number is not armstrong") 
    

FAQ Related to Basic Python Programming Interview Questions

  1. Is Python good for coding interviews?
    Beyond theoretical data structures, Python has powerful and convenient functionality built into its standard data structure implementations. These data structures are incredibly useful in coding interviews because they give you lots of functionality by default and let you focus your time on other parts of the problem.

  2. Is Python a good career?
    Python is not only one of the most popular programming languages across the globe, but it is one that offers the most promising career opportunities as well. This demand for Python developers is increasing every year. There is a reason why this high-level programming language is so popular.

  3. Who uses Python coding?
    Python is used by Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify, and a number of other massive companies. It’s one of the four main languages at Google, while Google’s YouTube is largely written in Python. Same with Reddit, Pinterest, and Instagram.

  4. Is Python a tool or language?
    Python is an interpreted, object-oriented, high-level programming language with dynamic semantics.

This article tried to discuss basic python programming interview questions. Hope this blog helps you understand and solve the problem. To practice more problems you can check out MYCODE | Competitive Programming at PrepBytes.

Leave a Reply

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