狼筝 2019-04-01 16:20 采纳率: 100%
浏览 399
已采纳

这个代码缩进有问题吗?还是别的有问题?

这次吧draw a square直接贴过来改,看到里面好多Tab和空格混用,照着它的格式又写一遍TAT,这次干脆什么都没有出来……这个应该不是缩进的问题吧?draw a square我是能运行的,下面是我的代码:

# -*- coding: UTF-8 -*- 
#!/usr/bin/env python


#前进1m,画边长( 0.5 )m的五边形

import rospy
from geometry_msgs.msg import Twist
from math import radians

class ROUTE():
    def __init__(self):
        # 初始化节点
        rospy.init_node('route', anonymous=False)

        # ctrl + c退出    
        rospy.on_shutdown(self.shutdown)

        self.cmd_vel = rospy.Publisher('cmd_vel_mux/input/navi', Twist, queue_size=10)

    # 5 HZ更新频率
        r = rospy.Rate(5);

    # 两个不同的Twist,转,直走

        # 0.5 m/s 前进
        move_cmd = Twist()
        move_cmd.linear.x = 0.5


        #旋转18 deg/s
        turn_cmd = Twist()
        turn_cmd.linear.x = 0
        turn_cmd.angular.z = radians(18);

    count = 0
    # 前进1M
    rospy.loginfo("前进ing")
        for x in range(0,10):
            self.cmd_vel.publish(move_cmd)
            r.sleep()
        while not rospy.is_shutdown():
        #转54度
        rospy.loginfo("转圈ing")
            for x in range(0,15):
                self.cmd_vel.publish(turn_cmd)
                r.sleep()            
        # 前进0.5M
        rospy.loginfo("前进ing")
            for x in range(0,5):
                self.cmd_vel.publish(move_cmd)
                r.sleep()
        # 转234度
        rospy.loginfo("准备拍照ing")
            for x in range(0,65):
                self.cmd_vel.publish(turn_cmd)
                r.sleep()            
        count = count + 1
        if(count == 5): 
                count = 0
        if(count == 0): 
                rospy.loginfo("是不是结束了?")

    def shutdown(self):
        # 停啦
        rospy.loginfo("停啦~")
        self.cmd_vel.publish(Twist())
        rospy.sleep(1)

if __name__ == '__main__':
    try:
        DrawASquare()
    except:
        rospy.loginfo("Bye~~")

结果不报错也没有提示语
图片说明
快疯了!!!这要还是没有加其他功能,光走一走怎么老是卡!!能不能跟我仔细讲讲到底哪里的问题!谢谢!!!

  • 写回答

2条回答 默认 最新

  • 吃鸡王者 2019-04-01 18:37
    关注

    -*- coding: UTF-8 -*-

    #!/usr/bin/env python

    #前进1m,画边长( 0.5 )m的五边形

    import rospy
    from geometry_msgs.msg import Twist
    from math import radians

    class ROUTE():
    def init(self):
    # 初始化节点
    rospy.init_node('route', anonymous=False)

        # ctrl + c退出    
        rospy.on_shutdown(self.shutdown)
    
        self.cmd_vel = rospy.Publisher('cmd_vel_mux/input/navi', Twist, queue_size=10)
    
    # 5 HZ更新频率
        r = rospy.Rate(5);
    
    # 两个不同的Twist,转,直走
    
        # 0.5 m/s 前进
        move_cmd = Twist()
        move_cmd.linear.x = 0.5
    
    
        #旋转18 deg/s
        turn_cmd = Twist()
        turn_cmd.linear.x = 0
        turn_cmd.angular.z = radians(18);
    
    count = 0
    # 前进1M
    rospy.loginfo("前进ing")
    for x in range(0,10):
        self.cmd_vel.publish(move_cmd)
        r.sleep()
    while not rospy.is_shutdown():
        #转54度
        rospy.loginfo("转圈ing")
        for x in range(0,15):
            self.cmd_vel.publish(turn_cmd)
            r.sleep()            
        # 前进0.5M
        rospy.loginfo("前进ing")
        for x in range(0,5):
            self.cmd_vel.publish(move_cmd)
            r.sleep()
        # 转234度
        rospy.loginfo("准备拍照ing")
        for x in range(0,65):
            self.cmd_vel.publish(turn_cmd)
            r.sleep()            
        count = count + 1
        if(count == 5): 
                count = 0
        if(count == 0): 
                rospy.loginfo("是不是结束了?")
    
    def shutdown(self):
        # 停啦
        rospy.loginfo("停啦~")
        self.cmd_vel.publish(Twist())
        rospy.sleep(1)
    

    if name == '__main__':
    try:
    DrawASquare()
    except:
    rospy.loginfo("Bye~~")

    大致帮你缩进了一下,试试行不行。
    建议:
    问题所在:for  语句本生不需要进一步缩进,和同级一样,
    for 语句循环语句需要相对于for行有缩进,while也同样。
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 vue3加ant-design-vue无法渲染出页面
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序