欢迎访问宙启技术站
智能推送

在Python中使用rospy的has_param()函数判断节点是否存在特定的参数

发布时间:2023-12-31 11:27:32

在Python中使用rospy的has_param()函数可以判断节点中是否存在特定的参数。以下是一个使用例子:

import rospy

rospy.init_node('param_example')  # 初始化ROS节点

# 判断节点中是否存在特定的参数
if rospy.has_param('/param_example/param1'):
    # 如果参数存在,则打印参数的值
    param1 = rospy.get_param('/param_example/param1')
    rospy.loginfo('param1 = %s', param1)
else:
    # 如果参数不存在,则打印提示信息
    rospy.loginfo('Parameter /param_example/param1 does not exist')

rospy.spin()  # 进入ROS循环

在上述例子中,我们初始化了一个名为"param_example"的ROS节点,并使用rospy.has_param()函数判断节点中是否存在名为"/param_example/param1"的参数。如果参数存在,我们使用rospy.get_param()函数获取参数的值,并使用rospy.loginfo()函数打印参数的值。如果参数不存在,我们使用rospy.loginfo()函数打印提示消息。最后,我们调用rospy.spin()函数,进入ROS循环,使节点保持运行状态。

注意,需要将上述代码保存为Python脚本,并在roscore运行的情况下运行该脚本。同时,需要确保使用的参数名正确,并且参数已经在节点中进行了定义。