Measurement Objects

    objects may be instantiated using a keyword argument indicating the context of the units. In the example below, two different distance objects are instantiated in units of kilometers (km) and miles (mi):

    For conversions, access the preferred unit attribute to get a converted distance quantity:

    1. >>> print(d1.mi) # Converting 5 kilometers to miles
    2. 3.10685596119
    3. >>> print(d2.km) # Converting 5 miles to kilometers

    Moreover, arithmetic operations may be performed between the distance objects:

    1. >>> print(d1 + d2) # Adding 5 miles to 5 kilometers
    2. 13.04672 km
    3. >>> print(d2 - d1) # Subtracting 5 kilometers from 5 miles
    4. 1.89314403881 mi

    Two Distance objects multiplied together will yield an object, which uses squared units of measure:

    To determine what the attribute abbreviation of a unit is, the unit_attname class method may be used:

    1. >>> print(Distance.unit_attname('US Survey Foot'))
    2. survey_ft
    3. >>> print(Distance.unit_attname('centimeter'))
    4. cm

    注解

    class Distance(\*kwargs*)[源代码]

    To initialize a distance object, pass in a keyword corresponding to the desired set with desired value. For example, the following creates a distance object representing 5 miles:

      • __getattr__(unit_att)

      Returns the distance value in units corresponding to the given unit attribute. For example:

      • classmethod unit_attname(unit_name)

      Returns the distance unit attribute name for the given full unit name. For example:

      1. >>> Distance.unit_attname('Mile')
      2. 'mi'

      class D

      Alias for Distance class.

      Area

      To initialize an area object, pass in a keyword corresponding to the desired set with desired value. For example, the following creates an area object representing 5 square miles:

      1. >>> a = Area(sq_mi=5)
      • __getattr__(unit_att)

      Returns the area value in units corresponding to the given unit attribute. For example:

      • classmethod unit_attname(unit_name)

      Returns the area unit attribute name for the given full unit name. For example:

      1. >>> Area.unit_attname('Kilometer')

      class

      Alias for Area class.

      脚注

      Robert Coup is the initial author of the measure objects, and was inspired by Brian Beck’s work in and Geoff Biggs’ PhD work on dimensioned units for robotics.