In this article, I’ll show you:
π¬ How to check the version of the Python module (package, library) smtplib
? And how to check if smtplib
is installed anyways?
These are the eight best ways to check the installed version of the Python module smtplib
:
- Method 1:
pip show smtplib
- Method 2:
pip list
- Method 3:
pip list | findstr smtplib
- Method 4:
library.__version__
- Method 5:
importlib.metadata.version
- Method 6:
conda list
- Method 7:
pip freeze
- Method 8:
pip freeze | grep smtplib
Before we go into these ways to check your smtplib
version, let’s first quickly understand how versioning works in Python—you’ll be thankful to have spent a few seconds on this topic, believe me!
A Note on Python Version Numbering
π‘Python versioning adds a unique identifier to different package versions using semantic versioning. Semantic versioning consists of three numerical units of versioning information in the format major.minor.patch
.
In this tutorial, we’ll use the shorthand general version abbreviation like so:
x.y.z
Practical examples would use numerical values for x
, y
, and z
:
1.2.3
4.1.4
1.0.0
This is shorthand for
major.minor.patch
- Major releases (
0.1.0
to1.0.0
) are used for the first stable release or “breaking changes”, i.e., major updates that break backward compatibility. - Minor releases (
0.1.0
to0.2.0
) are used for larger bug fixes and new features that are backward compatible. - Patch releases (
0.1.0
to0.1.1
) are used for smaller bug fixes that are backward compatible.
Let’s dive into the meat of this article:
π¬ Question: How to check the (major, minor, patch) version of smtplib
in your current Python environment?
Method 1: pip show
To check which version of the Python library smtplib
is installed, run pip show smtplib
or pip3 show smtplib
in your CMD/Powershell (Windows), or terminal (macOS/Linux/Ubuntu).
This will work if your pip installation is version 1.3 or higher—which is likely to hold in your case because pip 1.3 was released a decade ago in 2013!!
Here’s an example in my Windows Powershell: I’ve highlighted the line that shows that my package version is a.b.c
:
PS C:\Users\xcent> pip show smtplib Name: smtplib Version: a.b.c Summary: ... Home-page: ... Author: ... Author-email: ... License: ... Location: ... Requires: ... Required-by: ...
In some instances, this will not work—depending on your environment. In this case, try those commands before giving up:
python -m pip show smtplib python3 -m pip show smtplib py -m pip show smtplib pip3 show smtplib
Next, we’ll dive into more ways to check your smtplib
version.
Check out my new Python book Python One-Liners (Amazon Link).
If you like one-liners, you’ll LOVE the book. It’ll teach you everything there is to know about a single line of Python code. But it’s also an introduction to computer science, data science, machine learning, and algorithms. The universe in a single line of Python!
The book was released in 2020 with the world-class programming book publisher NoStarch Press (San Francisco).
Publisher Link: https://nostarch.com/pythononeliners
Method 2: pip list
To check the versions of all installed packages, use pip list
and locate the version of smtplib
in the output list of package versions sorted alphabetically.
This will work if your pip installation is version 1.3 or higher.
Here’s a simplified example for Windows Powershell, I’ve highlighted the line that shows the package version is 1.2.3
:
PS C:\Users\xcent> pip list Package Version --------------- --------- aaa 1.2.3 ... smtplib 1.2.3 ... zzz 1.2.3
In some instances, this will not work—depending on your environment. Then try those commands before giving up:
python -m pip list python3 -m pip list py -m pip list pip3 list
Method 3: pip list + findstr on Windows
To check the versions of a single package on Windows, you can chain pip list
with findstr smtplib
using the CMD or Powershell command: pip3 list | findstr smtplib
to locate the version of smtplib
in the output list of package versions automatically.
Here’s an example for smtplib
:
pip3 list | findstr smtplib 1.2.3
Method 4: Module __version__ Attribute
To check which version is installed of a given library
, you can use the library.__version__
attribute after importing the library (package, module) with import library
.
Here’s the code:
import my_library print(my_library.__version__) # x.y.z for your version output
Here’s an excerpt from the PEP 8 docs mentioning the __version__
attribute.
“PEP 8 describes the use of a module attribute called __version__
for recording “Subversion, CVS, or RCS” version strings using keyword expansion. In the PEP authorβs own email archives, the earliest example of the use of an __version__
module attribute by independent module developers dates back to 1995.”
You can also use the following one-liner snippet to run this from your terminal (macOS, Linux, Ubuntu) or CMD/Powershell (Windows):
python3 -c "import my_library; print(my_library.__version__)"
However, this method doesn’t work for all libraries, so while simple, I don’t recommend it as a general approach for that reason.
Method 5: importlib.metadata.version
The importlib.metadata
library provides a general way to check the package version in your Python script via importlib.metadata.version('smtplib')
for library smtplib
. This returns a string representation of the specific version such as 1.2.3
depending on the concrete version in your environment.
Here’s the code:
import importlib.metadata print(importlib.metadata.version('smtplib')) # 1.2.3
Method 6: conda list
If you have created your Python environment with Anaconda, you can use conda list
to list all packages installed in your (virtual) environment. Optionally, you can add a regular expression using the syntax conda list regex
to list only packages matching a certain pattern.
How to list all packages in the current environment?
conda list
How to list all packages installed into the environment 'xyz'
?
conda list -n xyz
Regex: How to list all packages starting with 'smtplib'
?
conda list '^smtplib'
Method 7: pip freeze
The pip freeze
command without any option lists all installed Python packages in your environment in alphabetically order (ignoring UPPERCASE or lowercase). You can spot your specific package smtplib
if it is installed in the environment.
pip freeze
Output example (depending on your concrete environment/installation):
PS C:\Users\xcent> pip freeze aaa==1.2.3 ... smtplib==1.2.3 ... zzz==1.2.3
You can modify or exclude specific packages using the options provided in this screenshot:
Method 8: pip freeze + grep on Linux/Ubuntu/macOS
To check the versions of a single package on Linux/Ubuntu/macOS, you can chain pip freeze
with grep smtplib
using the CMD or Powershell command: pip freeze | grep smtplib
to programmatically locate the version of your particular package smtplib
in the output list of package versions.
Here’s an example for smtplib
:
pip freeze | grep smtplib smtplib==1.2.3
Related Questions
Check smtplib Installed Python
How to check if smtplib
is installed in your Python script?
To check if smtplib
is installed in your Python script, you can run import smtplib
in your Python shell and surround it by a try/except to catch a potential ModuleNotFoundError
.
try: import smtplib print("Module smtplib installed") except ModuleNotFoundError: print("Module smtplib not installed")
Check smtplib Version Python
How to check the package version of smtplib
in Python?
To check which version of smtplib
is installed, use pip show smtplib
or pip3 show smtplib
in your CMD/Powershell (Windows), or terminal (macOS/Linux/Ubuntu) to obtain the output major.minor.patch
.
pip show smtplib # or pip3 show smtplib # 1.2.3
Check smtplib Version Linux
How to check my smtplib
version in Linux?
To check which version of smtplib
is installed, use pip show smtplib
or pip3 show smtplib
in your Linux terminal.
pip show smtplib # or pip3 show smtplib # 1.2.3
Check smtplib Version Ubuntu
How to check my smtplib
version in Ubuntu?
To check which version of smtplib
is installed, use pip show smtplib
or pip3 show smtplib
in your Ubuntu terminal.
pip show smtplib # or pip3 show smtplib # 1.2.3
Check smtplib Version Windows
How to check my smtplib
version on Windows?
To check which version of smtplib
is installed, use pip show smtplib
or pip3 show smtplib
in your Windows CMD, command line, or PowerShell.
pip show smtplib # or pip3 show smtplib # 1.2.3
Check smtplib Version Mac
How to check my smtplib
version on macOS?
To check which version of smtplib
is installed, use pip show smtplib
or pip3 show smtplib
in your macOS terminal.
pip show smtplib # or pip3 show smtplib # 1.2.3
Check smtplib Version Jupyter Notebook
How to check my smtplib
version in my Jupyter Notebook?
To check which version of smtplib
is installed, add the line !pip show smtplib
to your notebook cell where you want to check. Notice the exclamation mark prefix !
that allows you to run commands in your Python script cell.
!pip show smtplib
Output: The following is an example on how this looks for smtplib
in a Jupyter Notebook cell:
Package Version --------------- --------- aaa 1.2.3 ... smtplib 1.2.3 ... zzz 1.2.3
Check smtplib Version Conda/Anaconda
How to check the smtplib
version in my conda installation?
Use conda list 'smtplib'
to list version information about the specific package installed in your (virtual) environment.
conda list 'smtplib'
Check smtplib Version with PIP
How to check the smtplib
version with pip?
You can use multiple commands to check the smtplib
version with PIP such as pip show smtplib
, pip list
, pip freeze
, and pip list
.
pip show smtplib pip list pip freeze pip list
The former will output the specific version of smtplib
. The remaining will output the version information of all installed packages and you have to locate smtplib
first.
Check Package Version in VSCode or PyCharm
How to check the smtplib
version in VSCode or PyCharm?
Integrated Development Environments (IDEs) such as VSCode or PyCharm provide a built-in terminal where you can run pip show smtplib
to check the current version of smtplib
in the specific environment you’re running the command in.
pip show smtplib pip3 show smtplib pip list pip3 list pip freeze pip3 freeze
You can type any of those commands in your IDE terminal like so:
Summary
In this article, you’ve learned those best ways to check a Python package version:
- Method 1:
pip show smtplib
- Method 2:
pip list
- Method 3:
pip list | findstr smtplib
- Method 4:
library.__version__
- Method 5:
importlib.metadata.version
- Method 6:
conda list
- Method 7:
pip freeze
- Method 8:
pip freeze | grep smtplib
Thanks for giving us your valued attention — we’re grateful to have you here! π
Programmer Humor
There are only 10 kinds of people in this world: those who know binary and those who donβt.
π©π§ββοΈ
~~~
There are 10 types of people in the world. Those who understand trinary, those who donβt, and those who mistake it for binary.
π©π§ββοΈπ±ββοΈ