You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在终端分多行输出数组元素?(用于实现下拉菜单)

终端分多行打印数组实现下拉菜单效果

基础分多行打印(无交互)

如果只是需要将数组条目分多行输出为列表形式,直接遍历数组逐个打印即可,以下是不同语言的实现:

Node.js

const options = ['Java', 'Python', 'JavaScript', 'C++', 'Go'];
options.forEach((opt, index) => {
  console.log(`${index + 1}. ${opt}`);
});

执行后终端输出:

1. Java
2. Python
3. JavaScript
4. C++
5. Go

Python

options = ['Java', 'Python', 'JavaScript', 'C++', 'Go']
for idx, opt in enumerate(options, start=1):
    print(f"{idx}. {opt}")

执行后终端输出和上面一致。

交互式下拉菜单(支持选择)

如果需要实现可选择的下拉菜单功能,结合终端交互能力实现:

Node.js(内置readline模块)

const readline = require('readline');
const options = ['Java', 'Python', 'JavaScript', 'C++', 'Go'];

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

console.log('请选择一个选项:');
options.forEach((opt, index) => {
  console.log(`${index + 1}. ${opt}`);
});

rl.question('输入选项序号:', (answer) => {
  const selectedIndex = parseInt(answer) - 1;
  if (selectedIndex >= 0 && selectedIndex < options.length) {
    console.log(`你选择了:${options[selectedIndex]}`);
  } else {
    console.log('无效的选项序号');
  }
  rl.close();
});

运行后终端会先打印选项列表,等待用户输入序号,输入后返回选择结果。

Python(内置input)

options = ['Java', 'Python', 'JavaScript', 'C++', 'Go']

print('请选择一个选项:')
for idx, opt in enumerate(options, start=1):
    print(f"{idx}. {opt}")

try:
    selected_idx = int(input('输入选项序号:')) - 1
    if 0 <= selected_idx < len(options):
        print(f"你选择了:{options[selected_idx]}")
    else:
        print('无效的选项序号')
except ValueError:
    print('请输入有效的数字序号')

运行逻辑和Node.js版本一致,支持输入验证。

内容的提问来源于stack exchange,提问作者Aeolus Developer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 10:30:51