# How to Extract the File Extension using Python

Here are 3 ways to extract the file extension using Python:

(1) Extract the file extension with the dot:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)[1]
print(ext)
```

(2) Extract the file extension without the dot:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)[1][1:]
print(ext)
```

(3) Extract both the root and the file extension:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)
print(ext)
```

Next, you’ll see how to apply each of the 3 scenarios above using practical examples.

## 3 Scenarios to Extract the File Extension using Python

### Scenario 1: Extract the file extension with the dot

Under the first scenario, you’ll observe how to extract the file extension with the dot.

To start with a simple example, let’s suppose that a text file (called ‘Products’) is stored under the following path:

C:\Users\Ron\Desktop\Test

In this case, the file extension is txt for a text file.

You can then use the following template to extract the file extension with the dot using Python:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)[1]
print(ext)
```

For our example:

• The path where the file is stored is: C:\Users\Ron\Desktop\Test
• The file name is: Products
• The file extension is: txt

Therefore, the complete code to extract the file extension with the dot is:

```import os.path
my_path = r'C:\Users\Ron\Desktop\Test\Products.txt'
ext = os.path.splitext(my_path)[1]
print(ext)
```

You’ll then get “.txt” as follows:

### Scenario 2: Extract the file extension without the dot

What if you’d like to extract the file extension without the dot?

In that case, you may use the template below:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)[1][1:]
print(ext)
```

For our example:

```import os.path
my_path = r'C:\Users\Ron\Desktop\Test\Products.txt'
ext = os.path.splitext(my_path)[1][1:]
print(ext)
```

You’ll now get the “txt” file extension without the dot:

### Scenario 3: Extract both the root and the file extension

For the final scenario, you may use the syntax below in order to extract both the root and the file extension:

```import os.path
my_path = r'path where the file is stored\file name.file extension'
ext = os.path.splitext(my_path)
print(ext)
```

Here is the complete code for our example:

```import os.path
my_path = r'C:\Users\Ron\Desktop\Test\Products.txt'
ext = os.path.splitext(my_path)
print(ext)
```

And here is the result: