Linux 中的 Python 编程入门 - 第 1 部分
据说(招聘机构经常要求)系统管理员需要精通脚本语言。虽然我们大多数人可能习惯使用 Bash (或我们选择的其他 Linux shell)来运行命令行脚本,但诸如 Python 之类的强大语言可以带来一些好处。
首先,Python 允许我们访问命令行环境的工具并利用面向对象编程功能(本文稍后将详细介绍)。
最重要的是,学习Python可以提升您在创建桌面应用程序和学习数据科学领域的职业生涯。
如此简单易学,使用如此广泛,并且拥有大量即用型模块(包含 Python 语句的外部文件),难怪 Python 是首先教授编程的首选语言 -在美国一年级计算机科学专业的学生。
在这个由两篇文章组成的系列中,我们将回顾 Python 的基础知识,希望您会发现它可以作为您开始编程的跳板以及之后的快速参考指南。
也就是说,让我们开始吧。
在 Linux 上安装 Python
Python 版本 2.x 和 3.x 通常在大多数现代 Linux 发行版中都可用。您可以通过在终端模拟器中输入 python
或 python3
进入 Python shell,然后使用 quit()
退出:
which python
which python3
python -v
python3 -v
python
>>> quit()
python3
>>> quit()
如果你想在输入python时放弃Python 2.x而使用3.x来代替,可以修改相应的符号链接如下:
sudo rm /usr/bin/python
cd /usr/bin
ln -s python3.2 python # Choose the Python 3.x binary here
顺便说一句,值得注意的是,尽管版本 2.x 仍在使用,但它们并未得到积极维护。因此,您可能需要考虑切换到上面指出的 3.x。由于2.x和3.x之间存在一些语法差异,因此本系列我们将重点关注后者。
要在各自的 Linux 发行版上安装 Python 3.x,请运行:
sudo apt install python3 [On Debian, Ubuntu and Mint]
sudo yum install python3 [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a dev-lang/python [On Gentoo Linux]
sudo apk add python3 [On Alpine Linux]
sudo pacman -S python3 [On Arch Linux]
sudo zypper install python3 [On OpenSUSE]
在 Linux 上安装 Python IDLE
在 Linux 中使用 Python 的另一种方法是通过 IDLE(Python 集成开发环境),这是一个用于编写 Python 代码的图形用户界面。
sudo apt install idle [On Debian, Ubuntu and Mint]
sudo yum install idle [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo apk add idle [On Alpine Linux]
sudo pacman -S idle [On Arch Linux]
sudo zypper install idle [On OpenSUSE]
安装完成后,启动IDLE后您将看到以下屏幕。虽然它类似于 Python shell,但您可以使用 IDLE 比使用 shell 执行更多操作。
例如,您可以:
1.轻松打开外部文件(文件→打开)。
2)复制(Ctrl + C)
并粘贴(Ctrl + V)
文本,3)查找并替换文本,4) 显示可能的补全(在其他 IDE 中称为 Intellisense 或 自动补全 的功能),5)更改字体类型和大小等等。
除此之外,您还可以使用IDLE来创建桌面应用程序。
由于我们不会在这个由 2 篇文章组成的系列中开发桌面应用程序,因此请随意选择 IDLE 和 Python shell 来遵循示例。
在 Linux 上使用 Python 进行基本操作
正如所期望的,您可以使用 Python 执行算术运算(可以根据需要随意使用尽可能多的括号来执行您想要的所有运算!)并非常轻松地操作文本字符串。
您还可以将运算结果分配给变量并将其显示在屏幕上。 Python 中的一个方便的功能是串联 - 只需将逗号分隔列表(括号内)中的变量和/或字符串的值提供给 print 函数,它将返回由中的项目组成的句子序列:
>>> a = 5
>>> b = 8
>>> x = b / a
>>> x
1.6
>>> print(b, "divided by", a, "equals", x)
请注意,您可以混合不同类型(数字、字符串、布尔值等)的变量,并且一旦为变量分配了值,您就可以在以后毫无问题地更改数据类型(因此 Python 被称为动态类型语言) )。
如果您尝试使用静态类型语言(例如 Java 或 C#)执行此操作,则会引发错误。
浅谈面向对象编程
在面向对象编程(OOP)中,程序中的所有实体都表示为对象,因此它们可以与其他实体交互。因此,它们具有属性,并且大多数可以执行操作(称为方法)。
例如,假设我们要创建一个 dog 对象。一些可能的属性是颜色、品种、年龄等,而狗的一些动作可以执行的函数有 bark()、eat()、sleep() 等。
正如您所看到的,方法名称后面跟着一组括号,这些括号可能(也可能不)包含一个(或多个)参数(传递给方法的值)。
让我们用 Python 中的基本对象类型之一来说明这些概念:列表。
说明对象的方法和属性:Python 中的列表
列表是一组有序的项目,它们不一定必须具有相同的数据类型。要创建名为 rockBands 的空列表,请使用一对方括号,如下所示:
要将项目附加到列表末尾,请将项目传递给 append()
方法,如下所示:
>>> rockBands = []
>>> rockBands.append("The Beatles")
>>> rockBands.append("Pink Floyd")
>>> rockBands.append("The Rolling Stones")
要从列表中删除项目,我们可以将特定元素传递给 remove()
方法,或将元素在列表中的位置(计数从零开始)传递给 pop()
。
换句话说,我们可以使用以下任一选项从列表中删除“The Beatles”:
>>> rockBands.remove("The Beatles")
or
>>> rockBands.pop(0)
输入名称后加一个点后,您可以按Ctrl + Space
来显示对象的可用方法列表:
列表对象的属性是它包含的项目数。它实际上称为 length,通过将列表作为参数传递给 len 内置函数来调用(顺便说一句,我们之前举例的 print 语句是另一个 Python 内置函数)功能)。
如果您在 IDLE 中键入 len 并后跟左括号,您将看到该函数的默认语法:
现在,清单上的各个项目怎么样?它们也有方法和属性吗?答案是肯定的。例如,您可以将字符串项转换为大写并获取其包含的字符数,如下所示:
>>> rockBands[0].upper()
'THE BEATLES'
>>> len(rockBands[0])
11
概括
在本文中,我们简要介绍了Python、它的命令行 shell 和 IDLE,并演示了如何执行算术计算、如何将值存储在变量,如何将这些值打印回屏幕(单独或作为串联的一部分),并通过实际示例解释对象的方法和属性是什么。
在下一篇文章中,我们将讨论带有条件和循环的控制流。我们还将演示如何使用我们所学到的知识来编写脚本来帮助我们完成系统管理任务。
Python 听起来是不是您想了解更多的东西?请继续关注本系列的第二部分(其中我们将在脚本中结合 Python 和命令行工具的丰富内容),并且还可以考虑购买最好的 udemy python 课程来升级您的知识。
与往常一样,如果您对本文有任何疑问,可以信赖我们。只需使用下面的联系表向我们发送消息,我们会尽快回复您。