{"id":30313,"date":"2023-08-07T11:35:27","date_gmt":"2023-08-07T11:35:27","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=30313"},"modified":"2026-02-21T07:23:32","modified_gmt":"2026-02-21T07:23:32","slug":"installing-python-3-on-linux-centos-ubuntu-windows","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/installing-python-3-on-linux-centos-ubuntu-windows\/","title":{"rendered":"Python Tutorials: Installing Python 3 on Linux, Centos, Ubuntu &#038; Windows"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Python 3 Installation in Ubuntu<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">$ sudo apt-<span class=\"hljs-keyword\">get<\/span> install software-properties-common\n$ sudo add-apt-repository ppa:deadsnakes\/ppa\n$ sudo apt-<span class=\"hljs-keyword\">get<\/span> update\n$ sudo apt-<span class=\"hljs-keyword\">get<\/span> install python3.8\n$ python3 --version\n\nOr\n\n$ sudo apt-<span class=\"hljs-keyword\">get<\/span> install python3.6\n$ python3 --version<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Default Versions of Python in CentOS<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<p>Depending on when you\u2019re reading this or what version you\u2019re using, the version that you have installed by default or the version that\u2019s available in the CentOS repo might be different.<\/p>\n\n\n\n<p><strong>For CentOS 7:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Python 2.7.5 is installed by default. That version has reached its EOL years ago, so you should upgrade ASAP.<\/li>\n\n\n\n<li>Python 3.6.8 is the latest version available in the CentOS 7 repos. 3.6 reached its EOL in Dec 2021, so you should upgrade ASAP.<\/li>\n<\/ul>\n\n\n\n<p><strong>For CentOS 8:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Python isn\u2019t installed by default.<\/li>\n\n\n\n<li>Python 3.9.6 is the latest version available in the CentOS 8 repos. The EOL of Python 3.9.6 is Oct 2026, so you can use that version. To install it, just run\u00a0<code>yum install python39<\/code>\u00a0and that\u2019s it. If you want to install Python 3.10 or 3.11, follow the tutorial below.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Python 3 Installation in Centos<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">$ sudo yum install yum-utils\n$ sudo yum-builddep python3\n$ python3 --version<\/code><\/span><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Installing Python 3.6 on CentOS 7<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo yum -y install wget make gcc openssl-devel bzip2-devel\ncd \/tmp\/\nwget https:<span class=\"hljs-comment\">\/\/www.python.org\/ftp\/python\/3.6.12\/Python-3.6.12.tgz<\/span>\ntar xzf Python<span class=\"hljs-number\">-3.6<\/span><span class=\"hljs-number\">.12<\/span>.tgz\ncd Python<span class=\"hljs-number\">-3.6<\/span><span class=\"hljs-number\">.12<\/span>\n.\/configure --enable-optimizations\nsudo make altinstall\nsudo ln -sfn \/usr\/local\/bin\/python3<span class=\"hljs-number\">.6<\/span> \/usr\/bin\/python3\nsudo ln -sfn \/usr\/local\/bin\/python3<span class=\"hljs-number\">.6<\/span> \/usr\/bin\/python\nsudo ln -sfn \/usr\/local\/bin\/pip3<span class=\"hljs-number\">.6<\/span> \/usr\/bin\/pip3\npython3<span class=\"hljs-number\">.6<\/span> -V\npip3<span class=\"hljs-number\">.6<\/span> -V\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.6<\/span> \/usr\/bin\/python\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.6<\/span> \/usr\/bin\/python3<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Installing Python 3.7 on CentOS 7<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo yum -y install wget make gcc openssl-devel bzip2-devel\ncd \/tmp\/\nwget https:<span class=\"hljs-comment\">\/\/www.python.org\/ftp\/python\/3.7.9\/Python-3.7.9.tgz<\/span>\ntar xzf Python<span class=\"hljs-number\">-3.7<\/span><span class=\"hljs-number\">.9<\/span>.tgz\ncd Python<span class=\"hljs-number\">-3.7<\/span><span class=\"hljs-number\">.9<\/span>\n.\/configure --enable-optimizations\nsudo make altinstall\nsudo ln -sfn \/usr\/local\/bin\/python3<span class=\"hljs-number\">.7<\/span> \/usr\/bin\/python3<span class=\"hljs-number\">.7<\/span>\nsudo ln -sfn \/usr\/local\/bin\/pip3<span class=\"hljs-number\">.7<\/span> \/usr\/bin\/pip3<span class=\"hljs-number\">.7<\/span>\npython3<span class=\"hljs-number\">.7<\/span> -V\npip3<span class=\"hljs-number\">.7<\/span> -V\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.7<\/span> \/usr\/bin\/python\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.7<\/span> \/usr\/bin\/python3<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Installing Python 3.8 on CentOS 7<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo yum -y install wget make gcc openssl-devel bzip2-devel\ncd \/tmp\/\nwget https:<span class=\"hljs-comment\">\/\/www.python.org\/ftp\/python\/3.8.7\/Python-3.8.7.tgz<\/span>\ntar xzf Python<span class=\"hljs-number\">-3.8<\/span><span class=\"hljs-number\">.7<\/span>.tgz\ncd Python<span class=\"hljs-number\">-3.8<\/span><span class=\"hljs-number\">.7<\/span>\n.\/configure --enable-optimizations\nsudo make altinstall\nsudo ln -sfn \/usr\/local\/bin\/python3<span class=\"hljs-number\">.8<\/span> \/usr\/bin\/python3<span class=\"hljs-number\">.8<\/span>\nsudo ln -sfn \/usr\/local\/bin\/pip3<span class=\"hljs-number\">.8<\/span> \/usr\/bin\/pip3<span class=\"hljs-number\">.8<\/span>\npython3<span class=\"hljs-number\">.8<\/span> -V\npip3<span class=\"hljs-number\">.8<\/span> -V\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.8<\/span> \/usr\/bin\/python\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.8<\/span> \/usr\/bin\/python3<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Installing Python 3.8 on CentOS 7<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo yum -y install wget make gcc openssl-devel bzip2-devel\ncd \/tmp\/\nwget https:<span class=\"hljs-comment\">\/\/www.python.org\/ftp\/python\/3.9.1\/Python-3.9.1.tgz<\/span>\ntar xzf Python<span class=\"hljs-number\">-3.9<\/span><span class=\"hljs-number\">.1<\/span>.tgz\ncd Python<span class=\"hljs-number\">-3.9<\/span><span class=\"hljs-number\">.1<\/span>\n.\/configure --enable-optimizations\nsudo make altinstall\nsudo ln -sfn \/usr\/local\/bin\/python3<span class=\"hljs-number\">.9<\/span> \/usr\/bin\/python3<span class=\"hljs-number\">.9<\/span>\nsudo ln -sfn \/usr\/local\/bin\/pip3<span class=\"hljs-number\">.9<\/span> \/usr\/bin\/pip3<span class=\"hljs-number\">.9<\/span>\npython3<span class=\"hljs-number\">.9<\/span> -V\npip3<span class=\"hljs-number\">.9<\/span> -V\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.9<\/span> \/usr\/bin\/python\n$ sudo ln -fs \/usr\/local\/bin\/python3<span class=\"hljs-number\">.9<\/span> \/usr\/bin\/python3<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">How to Install Python 3.10 on CentOS<\/h2>\n\n\n\n<p>yum update<br>yum install openssl-devel bzip2-devel libffi-devel<br>yum groupinstall &#8220;Development Tools&#8221;<br>wget https:\/\/www.python.org\/ftp\/python\/3.10.2\/Python-3.10.2.tgz<br>tar -xzf Python-3.10.2.tgz<br>cd Python-3.10.2<br>.\/configure &#8211;enable-optimizations<br>make altinstall<br>python3.10 -V<\/p>\n\n\n\n<p>$ sudo ln -fs \/usr\/local\/bin\/python3.10 \/usr\/bin\/python<br>$ sudo ln -fs \/usr\/local\/bin\/python3.10 \/usr\/bin\/python3<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Install Python 3.10 on CentOS<\/h2>\n\n\n\n<p>yum update<br>yum install openssl-devel bzip2-devel libffi-devel<br>yum groupinstall &#8220;Development Tools&#8221;<br>wget https:\/\/www.python.org\/ftp\/python\/3.11.0\/Python-3.11.0a4.tgz<br>tar -xzf Python-3.11.0a4.tgz<br>cd Python-3.11.0a4<br>.\/configure &#8211;enable-optimizations<br>make altinstall<br>python3.11 -V<\/p>\n\n\n\n<p>$ sudo ln -fs \/usr\/local\/bin\/python3.11 \/usr\/bin\/python<br>$ sudo ln -fs \/usr\/local\/bin\/python3.11 \/usr\/bin\/python3<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Python 3 Installation in Ubuntu Default Versions of Python in CentOS Depending on when you\u2019re reading this or what version you\u2019re using, the version that you have installed by default&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-30313","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30313","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=30313"}],"version-history":[{"count":4,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30313\/revisions"}],"predecessor-version":[{"id":58820,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/30313\/revisions\/58820"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=30313"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=30313"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=30313"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}