# 3.5.1 创建工作空间和功能包 节点需要存在于功能包当中、功能包需要存在于工作空间当中。所以我们要想创建节点,就要先创建一个工作空间,再创建功能包。 ## 1 创建工作空间 工作空间就是文件夹,所以很简单 ``` mkdir -p town_ws/src cd town_ws/src ``` ## 2.创建一个功能包 我们先讲一下如何创建一个名字叫做`village_li `(李家村)python版本的功能包。 ``` ros2 pkg create village_li --build-type ament_python --dependencies rclpy ``` 大家可以手写一下这个代码,感受一下。现在小鱼来讲一讲这条命令的含义和参数。 - pkg create 是创建包的意思 - --build-type 用来指定该包的编译类型,一共有三个可选项`ament_python`、`ament_cmake`、`cmake` - --dependencies 指的是这个功能包的依赖,这里小鱼给了一个ros2的python客户端接口`rclpy` > 如果build-type什么都不写,ros2会默认类型为ament_cmake. 最后你可以得到这样一个目录结构。 ![image-20210727125747458](3.5.1创建工作空间和功能包/imgs/image-20210727125747458.png) ## 3.创建节点文件 接下来我们开始编写一个python节点,首先在`__init__.py`同级别目录下创建一个叫做`li4.py`的文件(在vscode中右击新建就行)。 创建完成后的目录结构长这样子 ![image-20210727125908746](3.5.1创建工作空间和功能包/imgs/image-20210727125908746.png)