从 JavaScript 角度学 Python(3) - 安装

前言

接下来就是安装 Python 的部分,毕竟我们要学习 Python 就要安装 Python 呀~

安装

看到这一篇你可能会「WT...什麽!!Python 安装你也写成一篇?难不成你又想拖延一天铁人赛?!」

对,你真的没看错,我就是要水一篇。

哎,不是,前面只是开玩笑的...

Python 确实安装上好像没有什麽,但是在 Windows 与 Mac 两个作业系统上就有一点点差异,而且可能会有一些雷点存在,所以乾脆独立一篇讲解两个作业系统的安装方式,希望可以减少一些想学习 Python 的雷点,更不用说今天可能你是一名纯粹的 JavaScript 工程师。

为什麽要安装 Python

这时候你也可能会疑惑为什麽要安装 Python?难道 Python 不能直接执行吗?

你还没安装 Python 呢~

当然是不行的。

最主要是因为我们的电脑并不懂我们写的程序语言是虾咪挖哥东东(台语:什麽东西),毕竟电脑只读&看得懂 01,所以我们会需要直译器去将我们写的 Python 程序码转换成电脑可以读懂的指令,而直译器的概念就像是中间人一样,你可以把它想像成翻译人员。

举例来讲,某些国际场面上,我们所讲的语言是中文,但对方只听得懂阿拉伯语言,那麽通常两个人中间就会有一个翻译人员帮我们将中文翻译成阿拉伯语言或者是将阿拉伯语言翻译成中文,而我们即将安装的 Python 直译器也是一样的概念:

中间人(图源网路)

那这时候你可能会想说,可是我在写 JavaScript 的时候也没安装任何东西啊?实际上你早就已经安装了,也就是浏览器,所以我们才可以直接在浏览器上面直接运行 JavaScript 语言唷~

(如果你对於 JavaScript 的运作想更深入了解的话,我会建议你可以阅读我先前写的 这一篇 笔记文章哩。)

Windows

首先进去到 Python 官方网站上方有一个 Downloads 选项,滑鼠移动过去就可以下载 Python 安装档案了:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486l92nWIhxnb.png

接下来打开来安装 Python,这边有一个小地方要特别注意,就是在先前其他前辈有描述到一件事情

之前都以为Python怎麽安装在Windows都没有差别,因为Python在Windows上兼容性比其他什麽Ruby之类的还好,
就随便安装,结果在发布django到IIS上就吃了一个大亏,花了一天才找的解决方案,後来才知道,Python还是有些地雷

(原文:https://ithelp.ithome.com.tw/articles/10210071)

那基於前辈提醒重点有两个

  • 安装路径不要太长
  • 路径不要有空白

因此这边在安装上会建议点「Customize installation」自订安装,并勾选 「Add Python to PATH」,这个「Add Python to PATH」主要是要将 Python 指令加入到电脑的环境变数中,否则你会无法使用:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486IC558IU5cV.png

Optional Features 这边基本上全部勾选,然後按下 Next 就对了:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486fsX4EECzUu.png

接下来其中 Install for all users 请打勾,简单来讲就是我们要安装给这一台电脑的全部使用者都可以使用 Python,然後底下路径改成「C:\Python39」即可开始安装:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486BznyVZW06m.png

(如果跳出权限提示,请按「是」。)

安装完毕後可按下 「Close」 按钮,然後打开终端机输入 python 或者 py(python 缩写) 就可以进入 Python 模式,如果你有摸过 Node.js 会发现与在终端机输入 node 有异曲同工之妙:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486EJLPq3Qcdy.png

MacOS

Mac 本身就有内建 Python 2.7,所以你是可以直接输入 python 进入 Python 模式:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486somyFQp2oM.png

但是因为我们会使用 Python 3.9 当作学习的版本,因此这边就会需要安装 Python 3.9,虽然 Mac 也可以进入 Python 官方网站下载安装 Python:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486VZZsmHDUUF.png

但是在这边实际上会建议使用 Homebrew 安装会比较好,主要原因是许多应用程序安装的方式有很多种,而且安装路径也会散得到处都是,当我们要调整或删除时就会格外的麻烦,因此这边会建议使用 Homebrew 这个套件管理工具来安装 Python:

https://ithelp.ithome.com.tw/upload/images/20210903/20119486fDA7KH2I23.png

安装 Homebrew

安装 Homebrew 的方式非常简单,就如同 官网 所讲的一样,在终端机输入以下指令就可以安装完毕:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

oh,题外话一下 Homebrew 是使用 Ruby 制作的,因此 Mac 本身就有内建 Ruby,可以尝试输入以下指令观看版本号:

ruby -v

如果想移除 Homebrew 的话,则可以输入以下指令:

/bin/bash -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

基本上 Homebrew 有一些常用的指令可以稍微记一下:

  • brew search [name] - 搜寻套件
    • ex: brew search python
  • brew update - 更新套件列表,初次安装会需要输入
  • brew upgrade - 更新已经安装的套件
  • brew install [name] - 安装套件
    • ex: brew install python3
  • brew uninstall [name] - 移除套件
    • ex: brew uninstall python
  • brew list - 已安装的套件
  • brew -v - 查看 Homebrew 版本

那麽由於我们要安装 Python 3,因此可以在终端机输入以下指令:

brew install python3

安装完毕之後可以尝试输入 python3 -V or python3 --version 查看是否已经有正确安装,如果你是已经有学过 Python 的人,可能会想说怎麽没有安装 pip(类似 npm 套件管理的工具),其实 Python3 之後就内建 pip,而这边要使用 pip 的时候指令是 pip3 -v 唷~

至於 pip 是什麽呢?後面我们会再聊到,你就先知道它是一个套件管理的工具就好,详细我们後面再谈。

我不得不说真的建议要使用 Homebrew 来安装 Python,一开始我用官方安装版去安装,结果後来为了要写文章需要删除 Python 却发现路径有两处,而且删除时又怕误删到其它设定档案,整个怕爆

https://ithelp.ithome.com.tw/upload/images/20210903/20119486XzNbP1ojoP.png

编辑器

基本上编辑器在本篇是使用 VSCode,当然也有人可能是使用 PyCharm,只要能够让你练习撰写 Python 我觉得都可以,因此可以看个人习惯为主,只是这个系列会主要着重使用 VSCode 哩~

事前准备

这一篇开始建议可以建立一个资料夹,因为在後面的章节开始会有许多范例与练习,因此会建议可以先准备好练习的资料夹,然後 Python 档案的副档名是 .py(JavaScript 不用我说了吧?是 .js),每一篇的结尾。

参考文献

作者的话

昨天清完冰箱後结果又发现漏水,後来把冰箱挪出来看之後才发现集水盘也满到一个极致,导致我连两天都在清理冰箱的积水,下班回到家满地都是积水真的满崩溃的。

关於兔兔们

兔法无边


<<:  NetSuite Order to Cash flow - Create Sales Order

>>:  [Day4] 语言模型(一)-N-gram

[Day 20] Sass - Using @extend

哈罗~今天来聊聊跟@mixin的兄弟 @extend 我们平常在写css时,时常会把class们相同...

[ Day 11 ] React 的生命周期 - Mounting

在 Class Component 的章节中我们提到过,它有别於 Function Compone...

[Day15] 碰撞侦测 - 分离轴原理 SAT

今日目标 实作SAT碰撞侦测 SAT的作法 回顾一下,AABB的作法是不管是甚麽形状,都把物件包进矩...

[Day 18] 针对网页的单元测试(四)

再写关於我们的页面 接下来我们要写 关於我们 跟 首页, 我们做简单一点就好, 主要是为了做测试而已...

Day26:HTML(24) form(3)

"select"元素 "select"元素定义了一个下拉列表...