Quiero que corte el índice con la entrada del usuario. Por ejemplo, entrybox1 = 0, entrybox2 = 10

Sin la participación del usuario, funcionó así

file_data["data1"] = content[10:20]

Intenté "obtener" el valor de los cuadros de entrada, pero fallé, no aparece nada.

file_data[key1EntryName.get()] = content[key1EntryStartIndex.get():key1EntryEndIndex.get()]
0
Johnnyyy 15 mar. 2021 a las 10:03

2 respuestas

La mejor respuesta

El problema podría ser que no los convierte a números enteros:

file_data[key1EntryName.get()] = content[
int(key1EntryStartIndex.get()):int(key1EntryEndIndex.get())]
2
MercifulSory 15 mar. 2021 a las 07:10

Input () crea cadenas que no se pueden usar para cortar. Tienes que convertirlos a números enteros:

startIndex = int(input())
endIndex = int(input())
content = 'abcdefghijklmnopqrstuvwxyz'
file_data = {}
file_data['data'] = content[startIndex:endIndex]
file_data['data']
'fghij'

Y, por supuesto, los usuarios no siempre siguen las instrucciones, por lo que debería intentarlo / excepto buscar ValueError.

0
Michael 15 mar. 2021 a las 07:10