docs: def read_port(self, port):
          """ Read the pin state of a whole port (8 pins)
  
          :Example:
  
          >>> expander = MCP23017I2C(gw)
          >>> # Read pin A0-A7 as a int (A0 and A1 are high)
          >>> expander.read_port('A')
          3
          >>> # Read pin B0-B7 as a int (B2 is high)
          >>> expander.read_port('B')
          4
  
          :param port: use 'A' to read port A and 'B' for port b
          :return: An int where every bit represents the input level.
          """
          if port == 'A':
              raw = self.i2c_read_register(0x12, 1)
          elif port == 'B':
              raw = self.i2c_read_register(0x13, 1)
          return struct.unpack('>B', raw)[0]