Another way of reading LAS/LAZ in Python.
import pylas
# Directly read and write las
las = pylas.read('filename.las')
las = pylas.convert(las, point_format_id=2)
las.write('converted.las')
# Open data to inspect header and then read
with pylas.open('filename.las') as f:
if f.header.point_count < 10 ** 8:
las = f.read()
print(las.vlrs)
Some rough documentation is available on ReadTheDocs .
Python 3 Only.
lazperf is an optional, but recommended dependency that allows pylas to read and write compressed LAZ files.
pip install pylas