import rclpy
from sensor_msgs.msg import LaserScan

def scan_callback(msg):
    for i, range in enumerate(msg.ranges):
        angle = msg.angle_min + i * msg.angle_increment
        x = range * math.cos(angle)
        y = range * math.sin(angle)
        print(f"Range[{i}]: {range:.2f}, Angle[{i}]: {angle:.2f}, X: {x:.2f}, Y: {y:.2f}")

def main(args=None):
    rclpy.init(args=args)
    node = rclpy.create_node('scan_listener')
    subscriber = node.create_subscription(LaserScan, '/scan', scan_callback)
    print("d")
    rclpy.spin(node)

if __name__ == '__main__':
    main()
无法读取
TypeError: create_subscription() missing 1 required positional argument: 'qos_profile'