Bordes con python


rami19

Miembro muy activo
Buenas tengo un trabajo con Python y hay una cosa que me es imposible de encontrar como hacerlo por eso pregunto por aqui ya que se que hay programadores muy buenos en este foro. La cosa es que tengo que hacer una caja con bordes con codigo 205 ASCII ("═"). Pero es que no tengo ni idea de como hacerlo, supongo que será con un bucle pero si no es asi escribidme también. GRACIAS :)
 

ulikes

Miembro muy activo
Noder
efectivamente, aunque no soy programador de Python, si que lo de dibujar cajas con caracteres ASCII es el típico bucle donde solo necesitas las coordenadas iniciales del dibujo, saber el ancho de la pagina, para saber cuantas veces debes dibujar (imprimir, plasmar en pantalla el caracter que necesitas) sin olvidar que si el dibujo sera un cajon, necesitas ademas del caracter "═" tambien imprimir al principio y al final de la caja las esquinas y hacia abajo.... de tal forma que deberia quedarte algo asi:

ASCII 201 ALT+201 "╔ " + "═" + " ╗" ASCII 187 ALT+ 187
ASCII 186 ALT+186 "║" + "║" ASCII 186 ALT +186
ASCII 200 ALT+200 "╚" + "═" + "╝" ASCII 188 ALT+188

Espero entiendas la idea:
sería (en BASIC primitivo) : print " ╔"
For I=1 to 25
print"="
next I
print"╗"
con este simple codigo BASIC antiguo se dibujaria el comienzo de la caja quedando tal que asi: ╔═════════════════════════╗

espero pilles la idea..
un saludo.
 

rami19

Miembro muy activo
efectivamente, aunque no soy programador de Python, si que lo de dibujar cajas con caracteres ASCII es el típico bucle donde solo necesitas las coordenadas iniciales del dibujo, saber el ancho de la pagina, para saber cuantas veces debes dibujar (imprimir, plasmar en pantalla el caracter que necesitas) sin olvidar que si el dibujo sera un cajon, necesitas ademas del caracter "═" tambien imprimir al principio y al final de la caja las esquinas y hacia abajo.... de tal forma que deberia quedarte algo asi:

ASCII 201 ALT+201 "╔ " + "═" + " ╗" ASCII 187 ALT+ 187
ASCII 186 ALT+186 "║" + "║" ASCII 186 ALT +186
ASCII 200 ALT+200 "╚" + "═" + "╝" ASCII 188 ALT+188

Espero entiendas la idea:
sería (en BASIC primitivo) : print " ╔"
For I=1 to 25
print"="
next I
print"╗"
con este simple codigo BASIC antiguo se dibujaria el comienzo de la caja quedando tal que asi: ╔═════════════════════════╗

espero pilles la idea..
un saludo.
Gracias!!! He hecho algo parecido y aunqur ya me funciono me lo apunto :)