#! /usr/bin/env python
#coding=utf-8
# from os import putenv
import rospy
# from std_msgs import msg
from std_msgs.msg import String # 发布的消息类型
'''
使用欧Python 实现消息发布:
1. 导包;
2. 初始化ros节点
3. 创建发布者对象;
4. 编写发布逻辑并发布数据。
'''
if __name__ == "__main__":
# 2. 初始化ros节点
rospy.init_node("sanDai") #传入节点名称
# 3. 创建发布者对象;
pub = rospy.Publisher("che",String,queue_size=10)
# 4. 编写发布逻辑并发布数据。
# 创建数据
msg = String()
# 使用循环发布数据
while not rospy.is_shutdown():
msg.data = "hello"
# 发布数据
pub.publish(msg)
“”"
记录一下遇到的错误:
- 如果Python文件中有中文,会抛出异常
SyntaxError: Non-ASCII character '\xe5' in file
解决方法:在Python文件前加上一句#coding=utf-8
- 在运行python时,抛出异常
import: not authorized 'rospy' @ error/constitute.c/WriteImage/1028.
解决方法:在python文件前面加上一句 --> 指定一下解释器#! /usr/bin/env python
- 如果吧
#coding=utf-8
放在第一行,#! /usr/bin/env python
放在第二行,还是会出现问题2,所以他们之间的顺序应该如下:#! /usr/bin/env python #coding=utf-8
“”"