40 Interview Questions on Python Strings

40 Interview Questions on Python Strings

Basic Concepts

1. What is a string in Python?
A string in Python is a sequence of characters. It is an immutable data type, meaning once a string is created, it cannot be modified.

2. How do you define a string in Python?
You can define a string in Python using single (‘), double (“), or triple (”’ or “””) quotes. For example:

single_quoted = ‘Hello’
double_quoted = “World”
triple_quoted = ”’Python”’

3. Explain the difference between single, double, and triple quotes for defining strings.
Single and double quotes are interchangeable, but using triple quotes allows strings to span multiple lines.

4. How can you concatenate two strings in Python?
Strings can be concatenated using the + operator or by simply placing them next to each other. For example:

concatenated_string = “Hello” + ” ” + “World”

5. What is the difference between str() and repr()?
str() is used for creating output for end-users, while repr() is mainly used for development and debugging, providing a more unambiguous representation.

6. How do you find the length of a string?
The len() function can be used to find the length of a string:

length = len(“Python”)

7. Explain the concept of string indexing in Python.
String indexing allows access to individual characters using their position. Indexing starts from 0 for the first character.

8. How can you access individual characters in a string?
Individual characters can be accessed using square brackets with the index:

my_string = “Python”
first_char = my_string[0] # Accessing the first character

9. What is string slicing? Provide an example.
String slicing extracts a portion of a string.
For example:

my_string = “Python”
substring = my_string[1:4] # Extracts characters from index 1 to 3

10. How do you reverse a string in Python?
You can reverse a string using slicing with a step of -1:

reversed_string = my_string[::-1]
String Methods

11. Explain the upper() and lower() string methods.
upper() converts all characters in a string to uppercase, while lower() converts them to lowercase.

12. What is the purpose of the strip() method?
The strip() method removes leading and trailing whitespaces from a string.

13. How can you check if a string starts or ends with a specific substring?
The startswith() and endswith() methods can be used for this purpose:

my_string.startswith(“Hello”)
my_string.endswith(“World”)

14. What does the replace() method do in Python strings?
The *replace() * method replaces occurrences of a specified substring with another substring:

new_string = my_string.replace(“old”, “new”)

15. Describe the usage of the split() method.
The split() method splits a string into a list of substrings based on a specified delimiter:

words = my_string.split(” “)
Formatting and Interpolation

16. What is string interpolation in Python?
String interpolation is the process of evaluating a string containing placeholders to produce a new string with the placeholders replaced.

17. How does the % formatting operator work with strings?
The % operator is used for string formatting. For

example:

formatted_string = “Hello, %s!” % “Python”

18. Explain the use of the format() method for string formatting.
The format() method provides a more flexible and readable way for string formatting:

formatted_string = “Hello, {}!”.format(“Python”)

19. What is f-string formatting? Provide an example.
F-strings are a concise and readable way to embed expressions inside string literals:

name = “Python”
f_string = f”Hello, {name}!”

20. How can you justify a string in Python?
The ljust(), rjust(), and center() methods are used for left, right, and center justification respectively.

Regular Expressions

21. What is a regular expression?
A regular expression (regex) is a powerful tool for pattern matching in strings.

22. How do you use the re module in Python?
The re module provides support for regular expressions in Python.

23. Explain the difference between match() and search() in regular expressions.
match() checks for a match only at the beginning of a string, while search() looks for a match anywhere in the string.

24. What is the purpose of the findall() method in regular expressions?
The findall() method returns all non-overlapping matches as a list.

25. How can you use groups in regular expressions?
Groups in regular expressions are created using parentheses and allow you to extract specific parts of a match.

Palindromes and Anagrams

26. Write a Python function to check if a string is a palindrome.

def is_palindrome(s):
return s == s[::-1]

27. Explain the concept of anagrams in strings.
Anagrams are words or phrases formed by rearranging the letters of another.

28. Write a function to determine if two strings are anagrams.

def are_anagrams(s1, s2):
return sorted(s1) == sorted(s2)

29. How would you reverse words in a given string?

reversed_words = ‘ ‘.join(word[::-1] for word in my_string.split())

30. Explain the concept of string permutation.
String permutation refers to all possible rearrangements of characters in a string.

Miscellaneous

31. Write a Python function to count the occurrences of a specific character in a string.

def count_occurrences(s, char):
return s.count(char)

32. Explain the concept of string immutability.
String immutability means that once a string is created, its contents cannot be changed.

How do you convert a string to a list of characters?
char_list = list(“Python”)
34. Write a Python function to remove duplicate characters from a string.

def remove_duplicates(s):
return ”.join(sorted(set(s), key=s.index))

35. Explain the use of the maketrans() and translate() functions.
The maketrans() function creates a translation table, and translate() applies it to replace characters.

Advanced Topics

** 36.What is the purpose of the bytearray type in Python?**
bytearray is a mutable sequence of integers representing raw byte values.

Explain the use of the memoryview object with strings.
memoryview provides a view of the memory as a sequence of bytes, useful for low-level manipulations.

38. How do you format a multi-line string in Python?
Multi-line strings can be formatted using triple-quoted strings or by using the textwrap module.

39. What is the purpose of the str.translate() method?
translate() is used for mapping specific characters in a string to other characters.

*40. Explain the concept of string interning in Python. *
String interning is the optimization technique where the interpreter reuses immutable string objects to save memory.

Python strings involves understanding not just the syntax but also the underlying concepts, optimizations, and advanced features. These questions cover a wide range of topics, helping you become proficient in string manipulation in Python.

Happy coding!

Leave a Reply

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