3

How to specify fields with "-" in eppy?

I have been using eppy for idf manipulation and it has been working well referring to eppy documentation.
However, I have problem specifying fields with "-".
For example X-Coordinate of Reference Point in Daylighting:ReferencePoint or Vertex 1 X-coordinate in BuildingSurface:Detailed.
Does anyone know how I should deal with - in fields using eppy?

katsuya.obara's avatar
2.1k
katsuya.obara
asked 2020-01-05 19:41:10 -0500
edit flag offensive 0 remove flag close merge delete

Comments

add a comment see more comments

1 Answer

5

The following will set the X coordinate of the reference point to 0:

daylgtctrl = idf_file.idfobjects["Daylighting:ReferencePoint".upper()][0]
daylgtctrl.XCoordinate_of_Reference_Point = 0

Daylighting:ReferencePoint,
Core_Retail_DaylRefPt1,    !- Name
Core_Retail,              !- Zone Name
0,                        !- XCoordinate of Reference Point
14.2,                     !- YCoordinate of Reference Point
0.0;                      !- ZCoordinate of Reference Point

You can also get all field names of an object are by using .fieldnames:

daylgtctrl.fieldnames

['key',
 'Name',
 'Zone_Name',
 'XCoordinate_of_Reference_Point',
 'YCoordinate_of_Reference_Point',
 'ZCoordinate_of_Reference_Point']

If you know the index of the field, you can use it instead of its name as such:

daylgtctrl[daylgtctrl.fieldnames[3]] = 0

Daylighting:ReferencePoint,
Core_Retail_DaylRefPt1,    !- Name
Core_Retail,              !- Zone Name
0,                        !- XCoordinate of Reference Point
14.2,                     !- YCoordinate of Reference Point
0.0;                      !- ZCoordinate of Reference Point
Jeremy's avatar
1.6k
Jeremy
answered 2020-01-05 21:14:08 -0500, updated 2020-01-05 21:19:17 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments