python check string ends with a vowel

Python – Check If String Ends with a Vowel

In this tutorial, we will look at how to check if a string in Python ends with a vowel or not with the help of some examples.

How to check if a string ends with a vowel character?

python check string ends with a vowel

To check if a string in Python ends with a vowel or not, check if the last character in the string is a vowel using the membership operator in.

The membership operator in in Python, returns True if a value is in a collection (for example, a character is present in a string) and returns False otherwise.

So, use the membership operator in to check if the last character in the string (character at index -1) is one of the vowel characters or not. The following is the syntax –

# check if string ends with a vowel
s[-1].lower() in "aeiou"

Here, we use the string lower() function to make the vowel check case-insensitive. It returns True if the string ends with a vowel.

Examples

Let’s now look at some examples. First, we will create some strings that we will use throughout this tutorial.

# create strings
s1 = "apple"
s2 = "leaf"
s3 = "$500"
s4 = ""

# display the strings
print(s1)
print(s2)
print(s3)
print(s4)

Output:

apple
leaf
$500

Here, we created four strings – s1, s2, s3 and s4. The string s1 ends with a vowel, the string s2 does not end with a vowel, the string s3 ends with a digit character '0' and the string s4 is an empty string.

📚 Data Science Programs By Skill Level

Introductory

Intermediate ⭐⭐⭐

Advanced ⭐⭐⭐⭐⭐

🔎 Find Data Science Programs 👨‍💻 111,889 already enrolled

Disclaimer: Data Science Parichay is reader supported. When you purchase a course through a link on this site, we may earn a small commission at no additional cost to you. Earned commissions help support this website and its team of writers.

Let’s now check if the strings s1, s2, and s3 end with a vowel or not.

# check if string ends wtih a vowel
print(s1[-1].lower() in "aeiou")
print(s2[-1].lower() in "aeiou")
print(s3[-1].lower() in "aeiou")

Output:

True
False
False

We get True for s1 as it does end with a vowel. We get False for s2 and s3 as they do not end with a vowel.

Now let’s apply the above method to the empty string, s4.

# check if string ends wtih a vowel
print(s4[-1].lower() in "aeiou")

Output:

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
Input In [3], in <module>
      1 # check if string ends wtih a vowel
----> 2 print(s4[-1].lower() in "aeiou")

IndexError: string index out of range

We get an IndexError because we’re trying to access an index that does not exist (an empty string does not have a -1 index).

To avoid the above error, you can first check whether the string is non-empty and then proceed to check if the last character is a vowel or not. See the example below –

# function to check if string ends with a vowel
def check_str_ends_with_vowel(s):
    if s and s[-1].lower() in "aeiou":
        return True
    else:
        return False

# check if string ends with a vowel
print(check_str_ends_with_vowel(s4))

Output:

False

We get False as the output for the empty string.

You might also be interested in –


Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.


Author

  • Piyush Raj

    Piyush is a data professional passionate about using data to understand things better and make informed decisions. He has experience working as a Data Scientist in the consulting domain and holds an engineering degree from IIT Roorkee. His hobbies include watching cricket, reading, and working on side projects.

Scroll to Top