+ 1
Conteo de título
file = open("/usercode/files/books.txt", "r") Me están pidiendo que cuente los caracteres de los títulos del archivo que me dieron que en la salida muestra la inicial del título y la cantidad de caracteres ejemplo: si en la primera línea está Harry Potter entonces en la Salida tiene que salir H12 el espacio es un carácter más son cuatro títulos y cada uno está separado por /n que no tiene que ser contado . Yo intenté con : For line in file: Print(Len(line) Salida: 13 18 20 19 Que hago para que me salga la inicial de la letra y no me cuente la n es decir tiene que salir H12 P17 G19 I18 #tu código va aquí file.close()
11 ответов
0
No se python pero tendrias que concatenar line[0] con len(line)-1
0
Que lo intente pero nada
0
Please always tag the language you're asking about.
https://code.sololearn.com/W3uiji9X28C1/?ref=app
0
Para concatenar tienes q pasar el numero a string...seria line[0]+str(len(line))
0
Okey Cristian con ese mi salida sale como se esperaba
H13
G19
P20
I18
Allí está contando la /n que es la separación de línea falta colocar algo que no cuenta la /n que salga así
H12
G18
P19
I18 la i si quedaría igual por qué tiene la /n por lo tanto no lo cuenta
0
Mmm. Veo 2 opciones reemplzar con la funcion replace los caracteres q no vas a contar em este caso /n por '' ..y la otra opcion es restar 1 a len..
string.replace(oldvalue, newvalue)
0
Y en ese caso como reemplazo ?
0
Utiliza rstrip(‘\n’) para eliminar el salto de linea del final y entonces cuentas.
line[0] + str(len(line.rstrip(‘\n’)))
0
Okey lo intentare pero voy por la mitad del curso y ese método hasta lo momento no lo e visto en la lecciones anterior y la otra cosa en en caso me dice que llámalo al método readline y que no cuente el último caracteres que es \n
0
Si no quieres utilizarlo porque no lo han enseñado entonces puedes hacer algo como esto:
If line[len(line) - 1] == ‘\n’:
Print(line[0] + str(len(line) - 1))
Else:
Print(line[0] + str(len(line)))
0
I have tried different types of code just messing around because the number are not that similar the formula would be on that index is only( H=13>1;P=19>2;G=19;I=19-1) that would be the index for the letters to appear but im still learning , (len(index+line)