• linux中利用VScode编写python程序


    目录

    一、创建一个工作空间

    二、再创建一个功能包

    三、编辑源文件

     四、编辑配置文件

    五、编译并执行


    一、创建一个工作空间

    首先创建一个工作空间以及一个src子目录,然后再进入工作空间调用catkin_make命令编译

    1. mkdir -p demo02_ws/src
    2. cd demo02_ws/
    3. catkin_make

     启动VScode

    code .
    

    按Ctrl+Shift+B,点击catkin_make:build

    将里面的文本全部替换

       

    1. {
    2. "version": "2.0.0",
    3. "tasks": [
    4. {
    5. "type": "catkin_make",
    6. "problemMatcher": [
    7. "$catkin-gcc"
    8. ],
    9. "group": "build",
    10. "label": "catkin_make: build"
    11. }
    12. ]
    13. }


         
        将上面代码全部替换成下面代码
         
       

    1. {
    2. "version": "2.0.0",
    3. "tasks": [
    4. {
    5. "label":"catkin_make:debug",
    6. "type": "shell",
    7. "command":"catkin_make",
    8. "args":[],
    9. "group": {"kind":"build","isDefault":true},
    10. "presentation":{
    11. "reveal":"always"
    12. },
    13. "problemMatcher":"$msCompile"
    14. }
    15. ]
    16. }

    这样做的目的是为了方便编译,以后在VScode中按Ctrl+Shift+B就可以实现编译


     

    二、再创建一个功能包

    在src中生成一个功能包,该功能包依赖于roscpp,rospy,std_msgs,其中roscpp是使用C++实现的库,rospy是使用python实现的库,std_msgs是标准消息库,创建ROS功能包时,一般都会依赖这三个库实现。

    建议写要求性能高,算法复杂的代码用C++,写一些功能简单的工具包的代码使用python。

    用鼠标右键点击src,选择create catkin package,在输入框填一个名字hello_vscode

    再到输入框输入 roscpp rospy std_msgs

    在hello_vscode目录下面新建目录scripts

    然后在scripts新建hello_vscode_p.py

     

    然后修改scripts文件权限,右键点击scripts选择以终端方式打开,输入

    chmod +x *.py

    三、编辑源文件

     再到hello_vscode_p.py中写代码

      

    1. #! /usr/bin/env python
    2. #导入包
    3. import rospy
    4. #入口
    5. if __name__=="__main__":
    6. #初始化ros节点
    7. rospy.init_node("hello_p")
    8. #输出日志
    9. rospy.loginfo("hello vscode! 这是python!")

     
    四、编辑配置文件

    此时打开与里面src同目录的CmakeLists.txt文件

    找到

    # catkin_install_python(PROGRAMS

    # scripts/my_python_script

    # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}

    # )

    去掉 #

            #

            #

            #

    将scripts/my_python_script改成scripts/hello_vscode_p.py

    最后按Ctrl+Shift+B进行编译

    1. #当不配置CmakeLists.txt 执行python文件会抛出异常
    2. #/usr/bin/env :"python":没有那个文件或目录
    3. #原因是:当前ros版本是 noetic ,它使用的是python3
    4. #解决方案
    5. #1、直接声明解释器为python3:#! /usr/bin/env python3(不建议,如果调用别人的代码就可能不能直接修改到他的py文件)
    6. #2、通过软链接的方式将python链接到python3(建议)
    7. sudo ln -s /usr/bin/python3 /usr/bin/python

    五、编译并执行

    点击终端里面的+,新建终端

    进入工作环境

    cd ~/demo02_ws/
    roscore

    再新开一个终端, 然后再新建终端输入

    1. source ./devel/setup.bash
    2. rosrun hello_vscode hello_vscode_p.py


     

    成功后如图所示

  • 相关阅读:
    Arduino操作MPU6050模块
    LeetCode1013
    【Linux网络配置实战】服务器Network静态路由配置
    【汇总】nltk相关资源包无法下载报错问题
    前端document的方法合集
    【大数据Hive】hive 优化策略之job任务优化
    增值税常见的税务筹划方法,干货!收藏!
    物联网低代码平台选型六大标准,赶快学起来
    React之组件的生命周期
    如何高效地从0搭建一个游戏项目
  • 原文地址:https://blog.csdn.net/qq_50942093/article/details/126102167