code: def get_pinned_version(ireq):
      
      try:
          specifier = ireq.specifier
      except AttributeError:
          raise TypeError("Expected InstallRequirement, not {}".format(
              type(ireq).__name__,
          ))
  
      if ireq.editable:
          raise ValueError("InstallRequirement is editable")
      if not specifier:
          raise ValueError("InstallRequirement has no version specification")
      if len(specifier._specs) != 1:
          raise ValueError("InstallRequirement has multiple specifications")
  
      op, version = next(iter(specifier._specs))._spec
      if op not in ('==', '===') or version.endswith('.*'):
          raise ValueError("InstallRequirement not pinned (is {0!r})".format(
              op + version,
          ))
  
      return version
docs: Get the pinned version of an InstallRequirement.
  
      An InstallRequirement is considered pinned if:
  
      - Is not editable
      - It has exactly one specifier
      - That specifier is "=="
      - The version does not contain a wildcard
  
      Examples:
          django==1.8   # pinned
          django>1.8    # NOT pinned
          django~=1.8   # NOT pinned
          django==1.*   # NOT pinned
  
      Raises `TypeError` if the input is not a valid InstallRequirement, or
      `ValueError` if the InstallRequirement is not pinned.