使用Python REPL的9个技巧

使用Python REPL的9个技巧

当然 貔貅树莓派 来自 Python,它是世界上最流行的编程语言之一,尤其深受工匠和创客们的喜爱。在本篇文章中,我将向您介绍使用 Python REPL 的 9 个技巧和窍门,如果您对 Python REPL 还不是很熟悉,也不用担心。 蟒蛇 或 REPL。

这篇文章针对初学者和中级Python程序员。

什么是 REPL?

REPL 或 Read-Evaluate-Print Loop 是与 Python 解释器直接交互的一种方式。它之所以被称为 REPL,是因为它会读取、评估和打印输入,然后循环回到起点,允许您输入另一条命令。

它提供了一个通过 Python Shell 输入代码并立即接收输出的接口。这使得检查代码、实时调试和生成交互式测试成为可能。通常情况下,看到这三个箭头,你就知道你在使用 Python REPL:

>>>

在这里您可以输入您的信息。

值得一提的是

Python Shell"(Python Shell)和 "Python 解释器"(Python Interpreter)这两个术语有时可以互换使用,但它们之间有细微的差别。Python 解释器指的是执行 Python 代码的实际程序或软件。而 Python Shell 则是允许您与解释器进行实时交互的界面。

除了标准的Python和Python3 Shell,许多人还使用IPython和bpython,它们是命令行程序,提供独特的功能,如语法高亮。

Python REPL

你可以看到 IPython 和 bpython 默认情况下更漂亮(下面我们将介绍如何让标准 REPL 也更漂亮)。

值得注意的是,IPython 的 REPL 会将输入行编号为 "In [1]"、"In [2]"等。

与IPython不同,bpython保持>>>布局。

REPL还可以提供命令历史、制表符补全、访问以前定义的变量和函数等功能,使其成为交互式Python编程和探索的便捷工具。

这使得REPL成为任何想在Raspberry Pi上乱搞的人的宝贵工具。

现在,您已经了解了 REPL 是什么,让我们来探讨一些使用 REPL 的技巧:

技巧1:查找文档

您可以直接从 REPL 通过使用 help() 功能

例如,键入 help(str) 将显示字符串对象的文档。您还可以添加特定的方法或函数名称以获取详细信息,例如

 help(str.upper)

如果输入这个信息,您将看到以下内容:

Python REPL 查找文件

技巧2:利用制表符完成

根据您使用的程序,Python REPL 支持制表符补全,这可以节省您的时间并防止输入错误。键入部分名称或对象后按 Tab 键将显示可用选项。

例如,如果您键入 int. 然后按 Tab 键,你会看到一个整数运行方法列表。

Python REPL 标签完成

技巧3:创建多行语句

此外,REPL允许您使用续行符编写多行语句。

如果您想将语句分成多行以便阅读,您可以使用反斜杠字符 (\)在每行的末尾,以便将其延续到下一行(见下面的示例1)。

您也可以将语句放在括号或方括号中,以便在下一行中继续执行(见下面的示例2)。

# example 1: using backslash for a multi-line statement

name = 'Fatima'
age = 46
country = 'Germany'

message = 'Hi, ' + \
          name + \
          '! You are ' + \
          str(age) + \
          ' years old and from ' + \
          country + '.'

print(message)

# the message will be 'Hi, Fatima! You are 46 years old and from Germany.'

# example 2: using parentheses for a multi-line statement

total = (1 + 2 + 3 +
         4 + 5 + 6 +
         7 + 8 + 9)

print("The total is:", total)

# the message will be 'The total is: 45'

技巧4:访问以前输入的代码

您可以在 REPL 中使用向上和向下箭头键访问先前键入的代码,就像在终端中一样。

按向上箭头键将循环浏览您的命令历史,允许您快速调用和修改以前的命令。请亲自体验一下!

技巧5:使用下划线变量

下划线变量 (_) 保存 REPL 中最后一个表达式的求值结果。

如果需要在后续操作中重复使用结果,而无需重新评估整个表达式,下划线就能派上用场。因此,如果您需要进行一些快速计算,或者想要超快地检索数据,只需键入下划线作为前一个结果的标准变量即可。

Python REPL 下划线变量

技巧6:执行系统命令和魔法命令(IPython)

在 IPython("交互式 Python "的缩写)中,只要在一行代码前加上感叹号 (!).

与 IPython 的 魔法指令, like %cd to change directory, you’re able to use the Python REPL for seamless integration!

例如 !ls 在基于 Unix 的系统上或 !dir 将列出当前目录的内容。

Python REPL 神奇命令

技巧7:进口试验

在 Python REPL 中,您可以尝试导入模块,而不需要创建单独的 Python 文件。这个特性允许您导入模块,尝试它们的功能,并交互式地探索它们的内容,方便您快速实验和探索不同的模块及其功能。

下面是如何使用 Python REPL 进行导入实验的方法:

>>> import math
>>> math.sqrt(16)
4.0

在本例中,我们使用 sqrt() 函数 math 模块计算16的平方根。

通过使用 Python REPL 进行导入实验,您可以快速测试和探索各种模块的功能,而不需要创建单独的 Python 文件。

通过这种互动和迭代过程,您可以更好地了解不同模块的工作原理,尝试不同的功能,并实时检查其结果。

技巧 8:自定义 REPL 提示

不喜欢将 >>> 作为主要提示符,而将...作为次要提示符?

你很幸运,因为你可以自定义 Python REPL 显示的提示。

通过修改 sys.ps1sys.ps2 变量,您可以分别更改主提示和辅助提示。

快跑

import sys

sys.ps1 = 'primary'
sys.ps2 = 'secondary'

现在,主要提示将是 "primary",次要提示将是 "secondary"。你可以随意更改!例如,用符号或表情符号试试看!

这样做只会影响当前的 REPL 会话。如果你想让事情变得更持久,那么你需要找到".pyrc "文件并编辑其中的提示。

还记得我上面的 REPL 中那又闷又丑的提示器吗?让我们改变一下颜色。

如果你使用的是 Linux,那么你可以在终端中输入以下内容:

tee ~/.pyrc <<E0F
import sys
sys.ps1='\x01\x1b[1;34;40m\x02>>>\x01\x1b[0m\x02'
sys.ps2='\x01\x1b[1;35;40m\x02...\x01\x1b[0m\x02'
E0F

这将把主提示符的颜色改为灰底蓝字,把次提示符的颜色改为灰底紫字,如果你正在寻找这种颜色的话。请随意尝试所有 ANSI 颜色序列 找到您满意的提示器颜色。

完成后,请务必将其导出:

export PYTHONSTARTUP=~/.pyrc

现在您的提示应该是这样的:

Python REPL 自定义提示

同样,这只是暂时的。如果你想永久更改,就必须修改配置文件。不过,这也让你尝到了其中的乐趣!

技巧9:探索模块和对象

如果你想补充查找文档和利用选项卡补全功能,那么这个小窍门就能让你一举两得!

您可以通过使用 dir() 功能

将模块或对象作为参数传递,它将返回该模块或对象的名称列表,允许您探索其可用属性、方法和函数。

例如

import math
print (dir(math))

这将显示数学模块中可用属性、方法和函数的列表。

Python REPL 探索模块和对象

这样的小窍门可以帮助您实现无缝工作流程。

一旦掌握了这 9 个技巧,你就能更有效地使用 REPL。

这将使调试和测试代码更加顺利。

在下面的评论中告诉我们你有哪些 REPL 技巧!

发表评论