def get(self, item, fastpath=True):
if self.items.is_unique:<EOL><INDENT>if not isna(item):<EOL><INDENT>loc = self.items.get_loc(item)<EOL><DEDENT>else:<EOL><INDENT>indexer = np.arange(len(self.items))[isna(self.items)]<EOL>if not is_scalar(indexer):<EOL><INDENT>if len(indexer) == <NUM_LIT:1>:<EOL><INDENT>loc = indexer.item()<EOL><DEDENT>else:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT><DEDENT><DEDENT>return self.iget(loc, fastpath=fastpath)<EOL><DEDENT>else:<EOL><INDENT>if isna(item):<EOL><INDENT>raise TypeError("<STR_LIT>")<EOL><DEDENT>indexer = self.items.get_indexer_for([item])<EOL>return self.reindex_indexer(new_axis=self.items[indexer],<EOL>indexer=indexer, axis=<NUM_LIT:0>,<EOL>allow_dups=True)<EOL><DEDENT>
Return values for selected item (ndarray or BlockManager).