質問: RPLidar('/dev/ttyUSB0') time.sleep(5) for i, scan in enumerate(lidar.iter_scans()): if distance < 1000: print('ON') else: print('OFF') if i > 10: break lidar.stop() lidar.stop_motor() lidar.disconnect() ``` ### 試したこと (0, [(15, 36.21875, 1227.75), (15, 270.875, 893.25), (15, 347.90625, 2575.0)]) (1, [(15, 349.875, 2770.0),(15, 156.359375, 529.75),(15, 348.515625, 2631.0)]) (2, [(15, 350.484375, 2739.75),(15, 223.78125, 497.5), (15, 349.390625, 2722.25)]) こんな感じの数列を取得した。 この数列の()内の3番めの数字がdistanceなので、この数字を使って条件分岐式を作りたい。 ### 補足情報(FW/ツールのバージョンなど) https://github.com/SkoltechRobotics/rplidar ここのURLにあるrplidar.pyをインポート元にしている。 rplidar.pyではdistanceを使って条件式があるみたい(最後の行らへん)
回答: distanceは関数のローカル変数なのでimportしても見えません。 し、そもそもそういう使い方を想定したモジュールではないはずです。pipでインストールしろと書いてあります。ドキュメントもあるようなので、それに沿って使うべきでしょう。