Related Articles

Related Articles

Python | Find the list elements starting with specific letter
  • Last Updated : 25 Apr, 2019

Sometimes, we require to get the words that start with the specific letter. This kind of use case is quiet common in the places of common programming projects or competitive programming. Let’s discuss certain shorthands to deal with this problem in Python.

Method #1 : Using list comprehension + lower()

This problem can be solved using the combination of above two functions, list comprehension performs the task of extending the logic to whole list and lower function checks for case insensitivity with the target word of argument letter.

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 code to demonstrate
# Words starting with specific letter
# using list comprehension + lower()
  
# initializing list
test_list = ['Akash', 'Nikhil', 'Manjeet', 'akshat']
  
# initializing check letter
check = 'A'
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + lower()
# Words starting with specific letter
res = [idx for idx in test_list if idx[0].lower() == check.lower()]
  
# print result
print("The list of matching first letter : " + str(res))

chevron_right


Output :

The original list : ['Akash', 'Nikhil', 'Manjeet', 'akshat']
The list of matching first letter : ['Akash', 'akshat']

 



Method #2 : Using list comprehension + startswith() + lower()

This method is similar to the above method but rather than checking for equality with operator, it checks using the startswith function which is inbuilt provided by python inbuilt library.

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 code to demonstrate
# Words starting with specific letter
# using list comprehension + startswith() + lower()
  
# initializing list
test_list = ['Akash', 'Nikhil', 'Manjeet', 'akshat']
  
# initializing check letter
check = 'A'
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + startswith() + lower()
# Words starting with specific letter
res = [idx for idx in test_list if idx.lower().startswith(check.lower())]
  
# print result
print("The list of matching first letter : " + str(res))

chevron_right


Output :

The original list : ['Akash', 'Nikhil', 'Manjeet', 'akshat']
The list of matching first letter : ['Akash', 'akshat']

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :