Mi piacerebbe creare un oggetto fetta da una stringa; in questo momento l'unica via sembra attraverso una ingombrante dichiarazione di evasione hackypython crea oggetto fetta da stringa
class getslice:
def __getitem__(self, idx): return idx[0]
eval("getslice()[%s, 1]" %(":-1"))
grazie in anticipo.
Modifica: Scusa se il prompt originale non era chiaro, l'input in questo caso era ": -1". Il punto era analizzare la stringa. La risposta di Ignacio Vazquez-Abrams ha risolto almeno il problema (e sembra funzionare anche con l'indicizzazione inversa), ma penso che la mia soluzione sopra sia ancora più chiara se non concettualmente pulita (e funzionerà correttamente se Python cambierà mai la sintassi di slicing).
Può essere un un po 'più chiaro su quale comportamento stai cercando? –
-1: Perché dovresti creare un oggetto fetta autonomo? Le fette sono pezzi di sintassi di prima classe? Senza alcuna base sul perché lo farei, la domanda è molto strana. –
Jaffe: domanda aggiornata. Lott: Sto facendo un po 'di lavoro sul linguaggio e vorrei usare anche le sezioni di Python. L'oggetto reale è piuttosto utile: ha una funzione di indici (len) che darà un (inizio, fine, incremento) data una lunghezza dell'array – gatoatigrado