analizando expresiones matemáticas en python y resolviendo para encontrar una respuesta

Soy bastante nuevo en programación. Esto es en relación con Python. Así que la idea es tomar una expresión como 3/5 o, a lo sumo, 3/5 * 2 (a lo sumo dos operadores, tenga en cuenta que los operadores pueden ser cualquiera de +, -, /, *) y resolverlo. El espacio en blanco puede existir en cualquier parte dentro de la expresión.

El usuario ingresa la expresión, por ejemplo 3/5, y el programa necesita resolver la expresión y mostrar las respuestas. Lo que he intentado está abajo. Tenga en cuenta que solo he intentado la primera parte, una vez que pueda dividir correctamente la expresión original que ingresa el usuario (que sería una cadena), la creación de funciones sería la parte fácil:

expres= str(input("something:"))

ssplit= hit.partition("/")
onec= int((ssplit[0].lstrip()).rstrip())
twoc= (ssplit[1].lstrip()).rstrip()
threec= int((huns[2].lstrip()).rstrip())


print(onec,"...",twoc,"...",threec) #just a debug test print

Así que arriba, puedo tomar una expresión como 3/5 y dividirla en tres cadenas separadas: 3, /, y 5. También puedo eliminar todos los espacios en blanco antes y después de los operadores / operandos. Tengo problemas al dividir expresiones como 4/5 + 6, porque no puedo ingresar código para ssplit [3] o ssplit [4] y luego ingresar una expresión como 3/5, porque no se definirá. Básicamente, necesitaba tu ayuda para descubrir cómo dividir una expresión como 3 / 4-6, etc. También necesito ayuda con la línea "ssplit= hit.partition("/")"para que vea la expresión ingresada y trabaje con +, - y * también. Cualquier y toda ayuda es apreciada. Además, si mi código anterior parece desagradable e ineficiente, por favor, hágame críticas. ¡Gracias!

Tenga en cuenta que no puedo, y no me gustaría utilizar eval. Se requiere orden de operaciones. No puedo usar comandos complicados. Necesito mantenerlo simple, lo máximo que puedo usar son las bibliotecas de cadenas, convirtiendo entre cadenas / enteros / flotadores, etc. y si, y, etc. declaraciones También puedo usar funciones.

Respuestas a la pregunta(3)

Su respuesta a la pregunta