10 个 Raspberry Pi 适用的 Hello World 程序

“Hello world”是计算和编程一切的开始。
411 位读者喜欢这篇文章。
Eben with a Java hello world message

Raspberry Pi 基金会。CC BY-SA 4.0。

“Hello world”是计算和编程一切的开始。它是您在新的编程语言中学习的第一件事,也是您测试某些东西或检查某些东西是否工作的方式,因为它通常是测试简单功能的最简单方法。

编程语言战争的勇士们经常引用他们自己的语言的“hello world”来对比另一种语言,说他们的语言更短更简洁更明确或其他什么。拥有一个简洁易读的“hello world”程序对于初学者学习您的语言、库、框架或工具来说是一个很好的入门。

我认为创建一个尽可能多的不同“hello world”程序列表会很酷,这些程序可以在 Raspberry Pi 上使用其 Raspbian 操作系统运行,而无需安装从 Raspberry Pi 网站下载时捆绑的任何其他软件。我创建了一个这些程序的 GitHub 仓库,并在此处为您解释了其中的 10 个。

1. Scratch

Scratch 是一个图形化的、基于块的编程环境,专为孩子们学习编程技能而设计,无需打字或学习编程语言的语法。Scratch 的“hello world”很简单——而且非常直观!

1. 从主菜单打开 Scratch 2

2. 点击 Looks

3. 将 say Hello! 块拖到右侧的工作区中。

4. 将文本更改为 Hello world

Hello world, Scratch program

5. 点击该块以运行代码。

Scratch logo

2. Python

Python 是一种功能强大且专业的语言,也非常适合初学者——而且学习起来非常有趣。由于 Python 的主要目标之一是可读性并坚持简单的英语,因此其“hello world”程序尽可能简单。

  1. 从主菜单打开 Thonny Python IDE
  2. 输入以下代码
    print("Hello world")
  3. 将文件另存为 hello3.py
  4. 点击 Run 按钮。

Python hello world screenshot

opensource.com

3. Ruby/Sonic Pi

Ruby 是另一种对初学者友好的强大语言。Sonic Pi,实时编码音乐合成器,建立在 Ruby 之上,因此用户实际键入的是 Ruby 的一种形式。

  1. 从主菜单打开 Sonic Pi
  2. 输入以下代码
    puts "Hello world"
  3. Run

Sonic Pi hello world message

不幸的是,“hello world”根本无法体现 Sonic Pi 的优点,但在您完成本文后,您应该查看其创建者 Sam Aaron 的现场编码,并查看 Sonic Pi 网站上的教程

或者,对于此示例使用 Sonic Pi 应用程序,您可以在文本编辑器中编写 Ruby 代码并在终端中运行它

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    puts "Hello world"
  3. 将文件另存为 home 目录中的 hello.rb
  4. 从主菜单打开 终端
  5. 运行以下命令
    ruby hello.rb

Ruby hello world message

4. JavaScript

这有点作弊,因为我只是在 Web 浏览器中使用 Web Inspector 控制台来使用客户端 JavaScript,但这仍然算数!

  1. 从主菜单打开 Chromium Web Browser
  2. 右键单击空白网页,然后从上下文菜单中选择 Inspect
  3. 点击 Console 选项卡。
  4. 输入以下代码
    console.log("Hello world")
  5. Enter 运行。

javascript hello world message

您也可以在 Raspberry Pi 上安装 NodeJS,并编写服务器端 JavaScript,但这在标准的 Raspbian 镜像中不可用。

5. Bash

Bash (Bourne Again Shell) 是大多数 Linux 发行版(包括 Raspbian)中的默认 Unix shell 命令行语言。您可以将 Bash 命令直接输入终端窗口,或将其编写到文件中,然后像编程脚本一样执行该文件。

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    echo "Hello world"
  3. 将文件另存为 home 目录中的 hello.sh
  4. 从主菜单打开 终端
  5. 运行以下命令
    bash hello.sh

Bash hello world message

请注意,您通常会在脚本顶部看到“hashbang”(#!/bin/bash),但由于我直接使用 bash 命令调用此脚本,因此没有必要(并且我试图使所有这些示例尽可能简短)。

您通常也会使用 chmod +x 使文件可执行,但同样,这也不是必要的,因为我正在使用 bash 执行。

6. Java

Java 是一种在行业中流行的语言,并且通常教授给学习计算机科学的本科生。我在大学里学过它,并试图避免接触它。显然,现在我(非常少量地)为了好玩而做它...

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    public class Hello {
            public static void main(String[] args) {
                System.out.println("Hello world");
            }
        }
           
    
  3. 将文件另存为 home 目录中的 Hello.java
  4. 从主菜单打开 终端
  5. 运行以下命令
    javac Hello.java
    java Hello

java hello world message

几乎可以凭记忆记住 Java 的“hello world”程序,但还不太行。我总是忘记 String[] args 位放在哪里,但是当您考虑它时,它就很明显了...

7. C

C 是一种基本的底层编程语言。许多编程语言都是用它编写的。操作系统是用它编写的。亲自看看&mdash: 查看 PythonLinux 内核的源代码。如果这看起来有点模糊,那就从“hello world”开始

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    #include <stdio.h>
    
    int main() {
        printf("Hello world\n");
    }
  3. 将文件另存为 home 目录中的 hello.c
  4. 从主菜单打开 终端
  5. 运行以下命令
    gcc -o hello hello.c
    ./hello

C hello world message

请注意,在之前的示例中,只需要一个命令即可运行代码(例如,python3 hello.pyruby hello.rb),因为这些语言是解释型语言而不是编译型语言。(实际上 Python 在运行时被编译,但这只是一个小细节。)C 代码被编译成字节码,然后执行字节码。

如果您有兴趣学习 C,Raspberry Pi 基金会出版了一本由其工程师之一编写的书籍 Learning to code with C。您可以购买印刷版或免费下载。

8. C++

C 的弟弟,C++(即 C 加一...)是另一种基本的底层语言,包含更多高级语言功能,例如类。它在各种用途中都很流行,包括游戏开发,并且您的操作系统的某些部分也将用 C++ 编写。

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    #include <iostream>
    using namespace std;
    
    int main() {
        cout << "Hello world\n";
    }
  3. 将文件另存为 home 目录中的 hello.cpp
  4. 从主菜单打开 终端
  5. 运行以下命令
    g++ -o hellopp hello.cpp
    ./hellocpp

C++ hello world message

熟悉 C/C++ 的读者会注意到,我的示例中没有包含 main 函数返回值。这是故意的,目的是删除样板代码,这不是绝对必要的。

9. Perl

Perl 因难以阅读而受到很多批评,但没有什么能阻止理解其“hello world”程序。到目前为止,一切都很好!

  1. 从主菜单打开 文本编辑器
  2. 输入以下代码
    print "Hello world\n"
  3. 将文件另存为 home 目录中的 hello.pl
  4. 从主菜单打开 终端
  5. 运行以下命令
    perl hello.pl

Perl hello world message

同样,我在大学里学过 Perl,但与 Java 不同,我成功地避免使用它。

10. Python 扩展:Minecraft 和 Sense HAT 模拟器

到目前为止,已经介绍了九种不同的编程语言,但让我们用更多的 Python 来结束。流行的电脑游戏 Minecraft 可用于 Raspberry Pi,并与 Raspbian 捆绑在一起。一个 Python 库允许您与您的 Minecraft 世界通信,因此并排打开 Minecraft 和 Python 编辑器,以便通过代码有趣地黑入您的虚拟世界。

  1. 从主菜单打开 Minecraft Pi
  2. 创建并进入 Minecraft 世界。
  3. Tab 键将焦点从 Minecraft 窗口中释放出来。
  4. 从主菜单打开 Thonny Python IDE
  5. 输入以下代码
    from mcpi.minecraft import Minecraft
    
    mc = Minecraft.create()
    
    mc.postToChat("Hello world")
  6. 将文件另存为 hellomc.py
  7. 点击 Run 按钮。

Minecraft hello world

在我的文章 Minecraft Pi 入门 中阅读更多关于使用 Python 黑入 Minecraft 的信息。

最后,让我们看一下 Sense HAT 模拟器。此工具提供了 Sense HAT 的图形表示,Sense HAT 是 Raspberry Pi 的附加板,专门为进入太空而制造,原因在 本文 中进行了解释。

sense_emu Python 库与 sense_hat 库相同,只是其命令在模拟器中而不是在物理硬件上执行。由于 Sense HAT 包括一个 8x8 LED 显示屏,我们可以使用其 show_message 函数来写入“hello world”。

  1. 在 Thonny 中打开另一个选项卡,然后输入以下代码
    from sense_emu import SenseHat
    
    sense = SenseHat()
    
    sense.show_message("Hello world")
  2. 将文件另存为 sense.py
  3. 点击 Run 按钮。

sense hat hello world

更多

就是这样!我希望您学到了一些新东西,并玩得开心在您的 Raspberry Pi 上尝试新的“hello world”程序!

您可以在 GitHub 仓库 中找到更多信息——并且随时可以在 issue 中提出更多建议,或者向我发送包含您贡献的 pull request。如果您有任何其他有趣的“hello world”程序想要分享——与 Raspberry Pi 相关或不相关——请在下面的评论中分享。

User profile image.
Ben 是 BBC News Labs 的软件工程师,曾任 Raspberry Pi 的社区经理。他热衷于 Linux、Python 和所有开源事物!在 Twitter 上关注 Ben @ben_nuttall。

9 条评论

(来源:learning C++)- 您可以通过执行“std::cout << "Hello World!"”来删除代码中的“using namespace std;”行。

C++ 示例...

为了清晰起见,既然您已经包含了整个标准命名空间,您可以编写...

cout << "Hello world" << endl;

...而不是将 \n 嵌入到文字字符串中。

还需要编译并运行为...

g++ -o hellocpp hellocpp.cpp

./hellocpp

(文章中的错字。)

我真的很喜欢这篇文章。我想知道访问 RPi 上的各种语言有多难。

我实际上非常喜欢 Java,但自从没有像 J-Builder 这样的 IDE 来工作后,我就放弃了它。我用 TomCat 做了一些工作,只是一些脚本,但又放弃了。

目前我使用 Python 非常舒适,但它似乎是各种特有库的丛林,虽然非常强大和有帮助,但往往提供许多平行的路径。无论如何,我对此表示感谢。我也很高兴看到 C & C++ 也被提及,因为我非常喜欢 Arduino。我一定会查看您引用的书。

这是一次怀旧的记忆之旅... 谢谢!!!!

PS 没有提到家庭中的害群之马 BASIC,虽然我确实喜欢我的 BBC32k 直接进入 BBC BASIC,那太棒了,但我们都已经进步了!

您可以尝试 Raspbian 仓库中的 basic256,但这可能不符合本文目的的“标准包”?

回复 作者:Rob Ward (未验证)

您的 perl 程序缺少分号 ;

print "Hello World!\n";

Rust
fn main() {
println!("Hello World!");
}

© . All rights reserved.