0

在此处输入图像描述

通过以下程序,我得到了一个大列表print~

我想从此列表中获取第二个值。

如何获得第二个值并用 print 而不是打印它print~

4

1 回答 1

0

[print~]将始终打印整个信号块(在您的情况下为 128 个值)。

要获取特定样本,您可以改用表格,将监控信号输入其中,然后检索您感兴趣的值:

...
|
[tabsend~ $0-foo]

[table $0-foo 128]

[2(
|
[tabread $0-foo]
|
[print]

注意:与 with 不同[print~],它只会在下一个信号块生成输出,这将立即输出数据(即:它将从最后一个信号块获取信号数据)。要获得下一个信号块,您可以将建议解决方案的下部替换为以下内容:

[bang~]            [2(
|                  |
|      [r $0-next] |
|      |           |
[spigot]           [t b       f]
|                  |           |
[t f b]            [1(         |
|     |            |           |
|     [0(          [s $0-next] |
|     |                        |
|     [s $0-next]              |
|                              |
[float                         ]
|
[tabread $0-foo]
|
...

(补丁用于[s/r $0-next]避免 ascii 图形中的交叉连接线;在实践中,您可能希望使用直接连接)最好将整个事物封装到抽象中。

于 2016-10-24T14:22:14.713 回答