1. Compare Java and Python.
2. 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, whereas the other languages use punctuation, and it has fewer syntactic constructions than the other languages.
3. What are the key features of Python?
Python is an interpreted language, so it doesn’t need to be compiled before execution, unlike languages such as C.
Python is dynamically typed, so there is no need to declare a variable with the data type. Python Interpreter will identify the data type based on the value of the variable.
For example, in Python, the following code line will run without any error:
a = 10
a = ‘esenceweb’
Python follows an object-oriented programming paradigm except for having access specifiers. Other than access specifiers (public and private keywords), Python has classes, inheritance, and all other usual OOPs concepts.
Python is a cross-platform language, i.e., a Python program written on a Windows system will also run on a Linux system with little or no modifications at all.
Python is a general-purpose language, i.e., Python finds its way in variousintoomains such as web application development, automation, Data Science, Machine Learning, and more.
4. What is the purpose of the PYTHONPATH environment variable?
PYTHONPATH has a role similar to PATH. This variable tells Python Interpreter where to locate the module files imported into a program. It should include the Python source library directory and the directories containing Python source code. PYTHONPATH is sometimes preset by Python Installer.
5. What is the purpose of PYTHONSTARTUP, PYTHONCASEOK, and PYTHONHOME environment variables?
PYTHONSTARTUP: It contains the path of an initialization file having Python source code. It is executed every time we start the interpreter. It is named .pythonrc.py in Unix, and it contains commands that load utilities or modify PYTHONPATH.
PYTHONCASEOK: It is used in Windows to instruct Python to find the first case-insensitive match in an import statement. We can set this variable with any value to activate it.
PYTHONHOME: It is an alternative module search path. It is usually embedded in PYTHONSTARTUP or PYTHONPATH directories to make switching of ule libraries easy.
6. Which data types are supported in Python?
Python has five standard data types:
Numbers
Strings
Lists
Tuples
Dictionaries
7. What is the difference between lists and tuples?
8. How is memory managed in Python?
Memory in Python is managed by Python's private heap space. All Python objects and data structures are located in a private heap. This private heap is taken care of by Python Interpreter itself, and a programmer doesn’t have access to this private heap.
Python memory manager takes care of the allocation of Python private heap space.
Memory for Python private heap space is made available by Python’s in-built garbage collector, which recycles and frees up all the unused memory.
9. Explain Inheritance in Python with an example.
As Python follows an object-oriented programming paradigm, classes in Python can inherit the properties of another class. This process is known as inheritance. Inheritance provides the code reusability feature. The class that is being inherited is called a superclass and the class that inherits the superclass is called a derived or child class. Following types The following stance are supported in Python:
Single inheritance: When a class inherits only one superclass
Multiple inheritance: When a class inherits multiple superclasses
Multilevel inheritance: When a class inherits a superclass and then another class inherits this derived class forming a ‘parent, child, and grandchild’ class structure
Hierarchical inheritance: When one superclass is inherited by multiple derived classes
10. What is a dictionary in Python?
Python dictionary is one of the supported data types in Python. It is an unordered collection of elements. The elements in dictionaries are stored as key–value pairs. Dictionaries are indexed by keys.
For example, below we have a dictionary named ‘dict’. It contains two keys, Country and Capital, along with their corresponding values, India and New Delhi.
dict = { ‘country’:’india’, ‘state’:’maharashtra’ }
11. Can you write an efficient code to count the number of capital letters in a file?
The normal solution for this problem statement would be as follows:
To make this code more efficient, the whole code block can be converted into a one-liner code using the feature called generator expression. With this, the equivalent code line of the above code block would be as follows:
12. Write a code to sort a numerical list in Python.
The following code can be used to sort a numerical list in Python:
13. How will you reverse a list in Python?
The function list.reverse() reverses the objects of a list.
14. How will you remove the last object from a list in Python?
Here, ?1 represents the last element of the list. Hence, the pop() function removes the last object (obj) from the list.
15. What are negative indexes and why are they used?
To access an element from ordered sequences, we simply use the index of the element, which is the position number of that particular element. The index usually starts from 0, i.e., the first element has an index of 0, the second has 1, and so on.
When we use the index to access elements from the end of a list, it’s called reverse indexing. In reverse indexing, the indexing of elements starts from the last element with the index number ‘?1’. The second last element has an index ‘?2’, and so on. These indexes used in reverse indexing are called negative indexes.
16. What are split(), sub(), and subn() methods in Python?
These methods belong to the Python RegEx ‘re’ module and are used to modify strings.
split(): This method is used to split a given string into a list.
sub(): This method is used to find a substring where a regex pattern matches, and then it replaces the matched substring with a different string.
subn(): This method is similar to the sub() method, but it returns a new string, along with the number of replacements.
17. How are range and xrange different from one another?
Functions in Python, range() and range () are used to iterate in a for loop for a fixed number of times. Functionality-wise, both these functions are the same. The difference comes when talking about Python version support for these functions and their return values.
18. Define pickling and unpickling in Python.
Pickling is the process of converting Python objects, such as lists, dicts, etc., into a character stream. This is done using a module named ‘pickle’, hence the name pickling.
The process of retrieving the original Python objects from the stored string representation, which is the reverse of the pickling process, is called unpickling.
19. What is a map function in Python?
The map() function in Python has two parameters, function and iterable. The map() function takes a function as an argument and then applies that function to all the elements of an iterable, passed to it as another argument. It returns an object list of results.
For example:
20. Write a code to get the indices of N maximum values from a NumPy array.
We can get the indices of N maximum values from a NumPy array using the below code:
21. What is a Python module?
Modules are independent Python scripts with the .py extension that can be reused in other Python codes or scripts using the import statement. A module can consist of functions, classes, and variables, or some runnable code. Modules not only help in keeping Python codes organized but also in making codes less complex and more efficient. The syntax to import modules in Python is as follows:
22. What do file-related modules in Python do? Can you name some file-related modules in Python?
Python comes with some file-related modules that have functions to manipulate text files and binary files in a file system. These modules can be used to create text or binary files, update their content, copy, delete, and more.
Some file-related modules are os, os. path, and shuttle. os. The os. path module has functions to access the file system, while the shuttle. os module can be used to copy or delete files.
23. Explain the use of the 'with' statement and its syntax.
In Python, using the ‘with’ statement, we can open a file and close it as soon as the block of code, where ‘with’ is used, exits. In this way, we can opt for not using the close() method.
24. Explain all file processing modes supported in Python.
Python has various file-processing modes.
For opening files, there are three modes:
read-only mode (r)
write-only mode (w)
read-write mode (rw)
For opening a text file using the above modes, we will have to append ‘t’ with them as follows:
read-only mode (rt)
write-only mode (wt)
read–write mode (rot)
Similarly, a binary file can be opened by appending ‘b’ with them as follows:
read-only mode (RB)
write-only mode (wb)
read–write mode (rwb)
To append the content in the files, we can use the append mode (a):
For text files, the mode would be ‘at’
For binary files, it would be ‘ab’
25. Is indentation optional in Python?
Indentation in Python is compulsory and is part of its syntax.
All programming languages have some way of defining the scope and extent of the block of codes; in Python, it is indentation. Indentation provides better readability to the code, which is probably why Python has made it compulsory.
26. How are Python arrays and Python lists different from each other?
In Python, when we say ‘arrays’, we are usually referring to ‘lists’. It is because lists are fundamental to Python just as arrays are fundamental to most of the low-level languages.
However, there is indeed a module named ‘array’ in Python, which is used or mentioned very rarely. Following are some of the differences between Python arrays and Python lists.
27. Write a code to display the contents of a file in reverse.
To display the contents of a file in reverse, the following code can be used:
28. Differentiate between NumPy and SciPy.
29. Which of the following is an invalid statement?
xyz = 1,000,000
x y z = 1000 2000 3000
x,y,z = 1000, 2000, 3000
x_y_z = 1,000,000
Answer: 2
30. Can we make multiline comments in Python?
Python does not have a specific syntax for including multiline comments like other programming languages. However, programmers can use triple-quoted strings (docstrings) for making multiline comments as when a docstring is not used as the first statement inside a method, it gets ignored by Python parser.
31. What would be the output if I run the following code block?
14
33
25
Error
Answer: 14
32. Write a command to open the file c:\hello.txt for writing.
33. What is __init__ in Python?
Equivalent to constructors in OOP terminology, __init__ is a reserved method in Python classes. The __init__ method is called automatically whenever a new object is initiated. This method allocates memory to the new object as soon as it is created. This method can also be used to initialize variables.
34. What do you understand by Tkinter?
Tkinter is an in-built Python module that is used to create GUI applications. It is Python’s standard toolkit for GUI development. Tkinter comes with Python, so there is no installation needed. We can start using it by importing it into our script.
Tkinter is a Python binding to the Tk GUI toolkit. It is the standard Python interface to the Tk GUI toolkit and is Python's de facto standard GUI. Tkinter is included with standard Linux, Microsoft Windows, and Mac OS X installs of Python. The name Tkinter comes from Tk interface (if we want to create a desktop application in that, in that case, tkinter is used for graphical appearance. )
35. Is Pythfullyull object-oriented?
Python does follow an object-oriented programming paradigm and has all the Basic OOPConceptspt such as inheritance, polymorphism, and more, with the exception of access specifiers. Python doesn’t support strong encapsulation (adding a private keyword before data members). Although, it has a convention that can be used for data hiding, i.e., prefixing a data member with two underscores.
36. What is the lambda function in Python?
A lambda function is an anonymous function (a function that does not have a name) in Python. To define anonymous functions, we use the ‘lambda’ keyword instead of the ‘def’ keyword, hence the name ‘lambda function’. Lambda functions can have any number of arguments but only one statement.
37. What is a self-keyword in Python?
Self-keyword is used as the first parameter of a function inside a class that represents the instance of the class. The object or the instance of the class is automatically passed to the method that it belongs to and is received in the ‘self-keyword.’ Users can use another name for the first parameter of the function that catches the object of the class, but it is recommended to use ‘self-keyword’ as it is more of a Python convention.
38. What are control flow statements in Python?
Control Flow Statements are used to manipulate or change the execution flow of a program. Generally, the flow of the execution of a program runs from top to bottom, but certain statements (control flow statements) in Python can break this top-to-bottom order of execution. Control flow statements include decision-making, looping, and more.
39. What is the difference between append() and extend() methods?
Both append() and extend() methods are methods used to add elements at the end of a list.
append(element): Adds the given element at the end of the list that is called this append() method
extend(another-list): Adds the elements of another list at the end of the list that is called this extend() method
40. What are loop interruption statements in Python?
There are two types of loop interruption statements in Python that let users terminate a loop iteration prematurely, i.e., not letting the loop run its full iterations.
Following are the two types of loop interruption statements:
Python break statement: This statement immediately terminates the loop entirely, and the control flow of the program is shifted directly to the outside of the loop.
Python continue statement: Continue statement terminates the current loop iteration and moves the control flow of the program to the next iteration of the loop, letting the user skip only the current iteration.
41. What is docstring in Python?
Python lets users include a description (or quick notes) for their methods using documentation strings or docstrings. Docstrings are different from regular comments in Python as, rather than being completely ignored by the Python Interpreter like, in the case of comments, Python documentation strings can be accessed at the run time using the dot operator when docstring is the first statement in a method or function.
42. What is the output of the following?
Output:
Explanation: Each element of x is converted into a list.
43. Which one of the following is not the correct syntax for creating a set in Python?
set([[1,2],[3,4],[4,5]])
set([1,2,2,3,4,5])
{1,2,3,4}
set((1,2,3,4))
Answer: set([[1,2],[3,4],[4,5]])
Explanation: The argument given for the set must be iterable.
44. What is functional programming? Does Python follow a functional programming style? If yes, list a few methods to implement functionally oriented programming in Python.
Functional programming is a coding style where the main source of logic in a program comes from functions.
Incorporating functional programming in our codes means writing pure functions.
Pure functions are functions that cause little or no changes outside the scope of the function. These changes are referred to as side effects. To reduce side effects, pure functions are used, which makes the code easy to follow, test, or debug.
Python does follow a functional programming style. Following are some examples of functional programming in Python.
filter(): Filter lets us filter some values based on conditional logic.
map(): Map applies a function to every element in an iterable.
reduce(): Reduce repeatedly reduces a sequence pairwise until it reaches a single value.
45. How does Python Flask handle database requests?
Flask supports a database-powered application (RDBS). Such a system requires creating a schema, which needs piping the schema.sql file into the sqlite3 command. So, we need to install the sqlite3 command to create or initiate the database in Flask.
Flask allows requesting a database in three ways:
before_request(): They are called before a request and pass no arguments.
after_request(): They are called after a request and pass the response that will be sent to the client.
teardown_request(): They are called in a situation when an exception is raised and responses are not guaranteed. They are called after the response has been constructed. They are not allowed to modify the request, and their values are ignored.
46. Write a Python program to check whether a given string is a palindrome or not, without using an iterative method. Note: A palindrome is a word, phrase, or sequence that reads the same backward as forward, e.g., madam, nurses run, etc.
47. Write a Python program to calculate the sum of a list of numbers.
Output:
48. Do we need to declare variables with data types in Python?
No. Python is a dynamically typed language, I.E., Python Interpreter automatically identifies the data type of a variable based on the type of value assigned to the variable.
49. How will you read a random line in a file?
We can read a random line in a file using the random module.
For example:
50. Write a Python program to count the total number of lines in a text file.
0 Replies to “Python Interview Question And Answers For Beginners”
Leave a Reply
Your email address will not be published.