Quiero quitar todos los caracteres después de un tercer carácter, por ejemplo, por ejemplo.Strip cadena después de la tercera aparición del carácter python
Encontré este código en línea y funciona, pero tengo problemas para aprender cómo funciona y quería preguntar para poder entenderlo por completo.
def indexList(s, item, i=0):
"""
Return an index list of all occurrances of 'item' in string/list 's'.
Optional start search position 'i'
"""
i_list = []
while True:
try:
i = s.index(item, i)
i_list.append(i)
i += 1
except:
break
return i_list
def strip_chrs(s, subs):
for i in range(indexList(s, subs)[-1], len(s)):
if s[i+1].isalpha():
return data[:i+1]
data = '115Z2113-3-777-55789ABC7777'
print strip_chrs(data, '-')
aquí está mi pregunta en el while True: línea de lo que es verdad? También en el excepto: ¿excepto qué? y ¿por qué se codifica una ruptura allí?
¡Gracias de antemano!
¿Por qué se etiqueta este Python 3.x? Utiliza la sintaxis de Python 2.x en su declaración 'print'. –
¿Estás tratando de despojar a todos los personajes después de la tercera aparición de otro? Entonces, en su ejemplo de 'datos' ¿está tratando de eliminar todo después de' 115Z2113-3-777'? – Casey
Sí, 55789ABC7777 debe ser eliminado. Etiqueté Python 3.x porque actualmente lo estoy aprendiendo.Quitaré la etiqueta aunque mis disculpas – canyon289