Python
Python是一种出色且强大的编程语言,易于使用(易于阅读和编写),并且与树莓派一起使用,可让您将项目连接到真实世界。
Python语法非常简洁,强调可读性,并使用标准的英语关键字。
通尼
对 Python 最简单的介绍是通过 Python3 开发环境 Thonny 。从桌面或应用程序菜单中打开 Thonny :
Thonny为您提供了一个 REPL (读取-评估-打印循环),可以提示您输入 Python 命令。因为它是 REPL ,所以您甚至可以在不使用print
的情况下将命令输出打印到屏幕上。在 Thonny 应用程序中,这称为 Shell 窗口。
您可以根据需要使用变量,但是甚至可以像计算器一样使用它。例如:
python
1 + 2 3 名称="萨拉" "你好" +名称 '你好莎拉'
Thonny还内置有语法突出显示功能,并且对自动完成功能提供了一些支持。您可以使用" Alt + P"(上一个)和" Alt + N"(下一个)来回顾您在 REPL 中输入的命令的历史记录。
## Python基本用法
Python中的 Hello world:
python
打印(" Hello world")
就那么简单!
缩进
某些语言使用花括号" {"和"}"来包裹属于同一行的代码行,然后让编写者缩进这些行以使其看起来嵌套。但是,Python不使用花括号,而是需要缩进嵌套。例如 Python 中的for
循环:
python 对于我在范围(10)中: 打印(" Hello")
缩进在这里是必需的。缩进的第二行将成为循环的一部分,而缩进的第二行将在循环之外。例如:
python
对于我在范围(2)中:
打印(" A")
打印(" B")
将打印:
一种
乙
一种
乙
而以下内容:
python 对于我在范围(2)中: 打印(" A") 打印(" B")
将打印:
一种 一种 乙
### 变量
要将值保存到变量,请按以下方式分配它:
python
名称="鲍勃"
年龄= 15
请注意,未使用这些变量指定数据类型,因为可以推断类型,以后可以更改。
python 年龄= 15 年龄+ = 1#年龄增加 1 打印(年龄)
这次我使用了增量命令旁边的注释。
### 评论
注释在程序中被忽略,但您可以在其中留下注释,并以井号"#"表示。多行注释使用三引号,如下所示:
python
""
这是一个非常简单的 Python 程序,显示" Hello"。
这就是全部。
""
打印(" Hello")
列表
Python还具有列表(在某些语言中称为数组),这些列表是任何类型的数据的集合:
python 数字= [1、 2 、 3 ]
列表用方括号" []"表示,每一项用逗号隔开。
### 迭代
某些数据类型是可迭代的,这意味着您可以遍历它们包含的值。例如一个列表:
python
数字= [1、 2 、 3 ]
对于数字:
打印(数量)
这将获取"数字"列表中的每个项目并打印出该项目:
1个
2
3
注意,我用"数字"一词来表示每个项目。这只是我为此选择的单词-建议您为变量选择描述性单词-为列表使用复数形式,并且每一项的单数形式都有意义。它使阅读时更容易理解。
其他数据类型是可迭代的,例如字符串:
python dog_name ="宾果"
对于 dog _name中的 char : 打印(字符)
这将遍历每个字符并打印出来:
乙 一世 ñ G Ø
### 范围
整数数据类型不可迭代,尝试对其进行迭代将产生错误。例如:
python
对于我在 3 :
打印(i)
将产生:
python TypeError:" int"对象不可迭代

但是,您可以使用`range`函数创建一个可迭代的对象:
python
对于我在范围(3)中:
打印(i)
range(5)包含数字 0 、 1 、 2 、 3 和 4 (总共 5 个数字)。要获取数字" 1"到" 5"(包括 5 ),请使用" range(1,6)"。
长度
您可以使用len
之类的函数来查找字符串或列表的长度:
python 名称="杰米" print(len(name))#5
名称= ["鲍勃","简","詹姆斯","爱丽丝"] 打印(len(名字))#4
### If语句
您可以对控制流使用`if`语句:
python
名称="乔"
如果 len (name)> 3:
print("好名字,")
打印(名称)
其他:
print("那是一个短名称,")
打印(名称)
Thonny中的 Python 文件
要在 Thonny 中创建 Python 文件,请单击"文件">"新建",然后会显示<无标题>窗口。这是一个空文件,而不是 Python 提示符。您在此窗口中编写一个 Python 文件,保存它,然后运行它,您将在另一个窗口中看到输出。
例如,在新窗口中,键入:
python n = 0
对于范围(1,101)中的 i : n + =我
print("数字 1 到 100 的总和是:") 打印(n) ```然后保存此文件("文件">"保存"或" Ctrl + S")并运行("运行">"运行模块"或按" F5"),您将在原始 Python 窗口中看到输出。
从命令行执行 Python 文件
您可以在标准editor中编写 Python 文件,然后从命令行将其作为 Python 脚本运行。只需导航到文件保存的目录(使用 cd 和 ls 作为指导)并使用 python3 运行即可,例如 python3 hello.py
使用 Python 的其他方式
命令行
通过在终端中输入python3
可以访问标准的内置 Python shell。
该 shell 提示您准备输入 Python 命令。您可以使用与 Thonny 相同的方式来使用它,但是它没有语法突出显示或自动完成功能。您可以使用 Up/Down 键回顾在 REPL 中输入的命令的历史记录。使用 Ctrl + D退出。
IPython
IPython是一个交互式 Python shell,具有语法突出显示,自动完成,漂亮的打印,内置文档等等。默认情况下未安装 IPython 。安装方式:
`` sudo pip3 安装 ipython
然后从命令行使用`ipython`运行。它的工作方式类似于标准的 python3 ,但具有更多功能。尝试输入`len?`并点击`Enter`。显示的信息包括 len 函数的文档字符串:
python
类型:builtin_function_or_method
字符串形式:<内置函数 len >
命名空间:内置 Python
Docstring:
len(object)->整数
返回序列或映射的项目数。
尝试以下字典理解:
python {i:我**在范围(12)中代表 3 }
这将漂亮地打印以下内容:
python
{0:0
1:1
2:8
3:27,
4:64
5:125,
6:216,
7:343,
8:512,
9:729,
10:1000,
11:1331}
在标准的 Python shell中,这将打印在一行上:
python {0:0,1:1、 2 :8、 3 :27、 4 :64、 5 :125、 6 :216、 7 :343、 8 :512、 9 :729、 10 :1000、 11 :1331}

您可以使用<kbd> Up/Down </kbd>键(如在 python 中)来查看在 REPL 中输入的命令的历史记录。历史记录还会保留到下一个会话,因此您可以退出`ipython`并返回(或在 v2 /3之间切换),历史记录仍然存在。使用 Ctrl + D退出。
## 安装 Python 库
### apt
可以在树莓派 OS归档文件中找到一些 Python 软件包,并且可以使用 apt 进行安装,例如:
``
sudo apt update
sudo apt安装 python -picamera
这是一种较好的安装方法,因为这意味着可以使用常用的" sudo apt update"和" sudo apt full-upgrade"命令轻松地使安装的模块保持最新。
点
树莓派 OS归档文件中并非所有 Python 软件包都可用,有时这些软件包可能已过期。如果在树莓派 OS归档文件中找不到合适的版本,则可以从Python软件包索引(称为 PyPI )安装软件包。
为此,请安装 pip :
`` sudo apt安装 python3 -pip
然后使用`pip3`安装 Python 软件包(例如`simplejson`):
``
sudo pip3 安装 simplejson
在此处阅读更多有关在 Python 中安装软件的信息。
摩天轮
官方 Python 软件包索引(PyPI)托管由软件包维护者上传的文件。某些软件包需要编译(编译 C /C ++或类似代码)才能安装,这是一项耗时的工作,尤其是在单核树莓派 1或 Pi Zero上。
piwheels是一项服务,提供可在树莓派上使用的预编译软件包(称为 Python wheel )。 树莓派 OS已预先配置为使用 piwheel 进行 pip 。在www.piwheels.org上了解有关 piwheels 项目的更多信息。