Programación

“Primero resuelve el problema. Entonces, escribe el código.” — John Johnson

martes, 24 de marzo de 2020

24 de Marzo

Archivos de la pagina 101 a la 104

Propiedades del objeto file
Se pueden acceder a las siguientes propiedades del objeto file:
closed: retorna True si el archivo se ha cerrado. De lo contrario, False.
mode: retorna el modo de apertura.
name: retorna el nombre del archivo
encoding: retorna la codificación de caracteres de un archivo de texto
>>> archivo = open("prueba.txt", "r+")
>>> contenido = archivo.read()
>>> nombre = archivo.name
>>> modo = archivo.mode
>>> encoding = archivo.encoding
>>> archivo.close()

>>> if archivo.closed:
...     print ("El archivo se ha cerrado correctamente" )
... else:
...     print ("El archivo permanece abierto" )
...
El archivo se ha cerrado correctamente

>>> nombre
'prueba.txt'

>>> modo
'r+'

>>> encoding
None


Cerrando archivos de forma automática
Desde la versión 2.5, Python incorpora una manera elegante de trabajar con archivos de forma tal, que se cierren de forma automática sin necesidad de invocar al método close(). Se trata de un bloque with:
with open("prueba.txt", "r") as archivo:
    contenido = archivo.read()
print (archivo.closed)

jueves, 19 de marzo de 2020

19 marzo 2020

pagina 102
hay 6 archivos
favor de tecelarlos

p=open("ej1.txt","w+")
cad=input("Dame una cadena : ")
p.write(cad)
p.close()


with open("ej1.txt","r+") as f:#r+ reescribe
contenido=f.read() #lee el archivo completo
for i in contenido:
if (i==' '):
print('soy espacio')
pos=f.tell()
print(pos)
else:
print(':(')


f.close()#cierra el archivo

martes, 26 de noviembre de 2019

spinball colores


from tkinter import *

window = Tk()

window.title("Capta letrero")

window.geometry('500x250')
li=[];
def clicked():

   print(var.get())
   l=var.get()
   li.append(l)
   print(li)
 
 
def clicked2():

   print(var.get())
   l=var.get()
   li.append(l)
   print(li)

 
def clicked3():

   print(var.get())
   l=var.get()
   li.append(l)
   print(li)
 
var =IntVar()
var.set(2)

spin = Spinbox(window, values=(1, 2),fg="white",bg="red", width=5, textvariable=var)
spin.grid(column=0,row=0)
spin = Spinbox(window, values=(1, 2),fg="white",bg="green", width=5, textvariable=var)
spin.grid(column=2,row=0)
spin = Spinbox(window, values=(1, 2),fg="white",bg="blue", width=5, textvariable=var)
spin.grid(column=4,row=0)

btn = Button(window,fg="red", text="Valor aceptado", command=clicked)
btn.grid(column=1, row=0)
btn = Button(window, fg="green",text="Valor aceptado", command=clicked2)
btn.grid(column=3, row=0)
btn = Button(window, fg="blue",text="Valor aceptado", command=clicked3)
btn.grid(column=5, row=0)
window.mainloop()

jueves, 21 de noviembre de 2019

https://stackoverflow.com/questions/25088087/how-to-move-a-turtle-stamp-in-python

import random
import turtle

STAMP_SIZE = 20
SQUARE_SIZE = 15
FINISH_LINE = 200
COLOR_LIST = ['red', 'blue', 'green', 'brown', 'yellow', 'purple']

def draw_start():
    turtle.speed('fastest')
    turtle.penup()
    turtle.setpos(-350, 300)
    turtle.pendown()
    turtle.right(90)
    turtle.forward(520)

def draw_finish():
    turtle.shape('square')
    turtle.shapesize(SQUARE_SIZE / STAMP_SIZE)
    turtle.penup()

    for i in range(18):
        turtle.setpos(FINISH_LINE, (300 - (i * SQUARE_SIZE * 2)))
        turtle.stamp()

    for j in range(18):
        turtle.setpos(FINISH_LINE + SQUARE_SIZE, ((300 - SQUARE_SIZE) - (j * SQUARE_SIZE  * 2)))
        turtle.stamp()

    turtle.hideturtle()

def move_turtle(who):
    who.forward(random.randint(1, 10))
    if who.xcor() < FINISH_LINE:
        turtle.ontimer(lambda who=who: move_turtle(who), 50)

print('Welcome to Turtle Racing!')
number_of_turtles = int(input('How many turtles (between 3 and 6): '))

draw_start()
draw_finish()

turtle_list = []

for idx in range(number_of_turtles):
    racer = turtle.Turtle('turtle', visible=False)
    racer.speed('fastest')  # affects drawing speed, not forward motion
    racer.penup()
    racer.setpos(-350 - STAMP_SIZE, 280 - idx * 90)
    racer.color(COLOR_LIST[idx])
    racer.showturtle()

    turtle_list.append(racer)

for racer in turtle_list:
    turtle.ontimer(lambda who=racer: move_turtle(who), 100)

turtle.exitonclick()