GNU Radio官方教程系列(三):GRC 中的 Python 变量
本教程介绍了 GRC 中如何使用 Python 数据类型以及如何显示变量。
GRC 中的浮点数和整数
GNU Radio Companion (GRC) 使用 Python 数据类型来表示变量。最简单的数据类型用于描述数字。Python 中的数字可以是浮点数或整数:
floatNumber = 3.14
integerNumber = 2
可以使用 float() 函数 将整数转换为浮点数,也可以使用 int() 函数 将浮点数转换为整数。
floatNumber = float(2)
integerNumber = int(3.14)
类型转换可以在变量块内完成:

该值以整数形式显示:

GRC 显示数字的方式与 Python 不同。例如, samp_rate 模块会被添加到每个新的流程图中。

双击 samp_rate 变量以编辑其属性:

samp_rate 的值为 32000 ,但 GRC 显示的值却是 32k。GRC 会将所有数字转换为 32000。请注意,GRC 显示的数字格式 可能 与 Python 中的表示格式不同。
再举一个例子,将一个新变量拖放到工作区中。双击即可编辑其属性:
- ID: 浮点数
- 数值: 0.25

GRC 现在将 250m 0.25 显示为 ,因为它已转换为 SI 单位(毫)。

GRC 中的字符串
Python 使用单引号 ' 和双引号 " 来包含字符串:
singleQuoteString = 'string1'
doubleQuoteString = "string2"
在 GRC 中,字符串可以用作变量:

该字符串显示在 GRC 中:

GRC 中的列表和元组
GRC 中的变量可以使用 Python 列表:

该列表显示在 GRC 中:


GRC 中的变量可以使用 Python 元组:
![]()

该元组显示在 GRC 中:


列表理解
在 Python 中,每个 变量 都对应一行代码:
ID = 值
列表推导式 可以用来在 变量 中编写函数。例如,列表推导式可以用来遍历列表,将所有元素加 1,然后将每个元素乘以 2:
listVariable=[0,1,2,3]
listComprehensionExample=[(i+1)*2foriinlistVariable]
这个列表推导式示例在 GNU Radio 中使用,它使用了两个变量 listVariable 和 listComprehensionExample ,并输入了它们的对应 值 :
![]()

![]()

列表显示在 GRC 中:


GNU Radio Companion 中的属性颜色
GRC 在编辑块属性时使用颜色方案来表示数据类型。自 3.10.10 版本起,此功能默认处于禁用状态,但可以在 “视图 ”菜单的 “显示属性字段颜色” 下启用。
QT GUI 频率接收器 模块的属性如下:


![]()

QT GUI 频率接收器 属性有多种颜色: 橙色 、 绿色 和 紫色 。每种颜色对应不同的数据类型:
例如, 带宽显示 为 橙色 ,因为带宽可以是任何浮点数。FFT 大小 必须是整数,因此显示为 绿色 。Y 轴标签 是一个字符串,因为它包含用于描述图表纵轴的词语,因此显示为 紫色 。
变量 块没有颜色,因为它们可以用来表示任何数据类型或对象。
全部回复 (0)
lium
社区创作者
