To complement @yuan.chen‘s answer, here is a more specific code:
# This is your non-sequential object obj = TheSystem.NCE.GetObjectAt(2)
# Create a pick-up solve type from this object pickup_solve = obj.XPositionCell.CreateSolveType(ZOSAPI.Editors.SolveType.ObjectPickup)
# Adjust the solve settings pickup_solve.Object = 1 # This is the object to pick-up from pickup_solve.ScaleFactor = 2.0 pickup_solve.Offset = 3.0 pickup_solve.Column = ZOSAPI.Editors.NCE.ObjectColumn.XPosition
# Apply the solve obj.XPositionCell.SetSolveData(pickup_solve)
You can pick-up from other columns, and you’ll find the available ones in the Syntax Help File: