miércoles, 24 de octubre de 2018

PRACTICA #8: IMAGENES ALEATORIAS


from Tkinter import *
from PIL import Image, ImageTk
import os
import random #Seleccionar y dar

dir= os.path.dirname(__file__)#Lo utilizo para dar una ruta de imagenes
fotos = dir + "/imagenes/"
root=Tk()#Lo uso par la ventana de la aplicacion de tkinter

arreglo= [1,2,3,4,5,6,7,8] #Creo un arreglo con el numero de las imagenes
eleccion_aleatoria= str(arreglo.index(random.choice(arreglo))+1)
print eleccion_aleatoria
figura= fotos + eleccion_aleatoria + '.png'
print figura

img= Image.open(figura)
tkimage=ImageTk.PhotoImage(img)
lab= Label(root,image=tkimage)
lab.pack()


root.geometry("500x300")
root.mainloop()

martes, 23 de octubre de 2018

PRACTICA #7: JUEGO BLACKJACK AUTOR ANTONIO HUERTA


#Librerias
import random
import time

#Variables Globales
global cartas
cartas = ["A",2,3,4,5,6,7,8,9,10,"J","Q","K"]

global nombrejugadores
nombrejugadores = []

#Funciones
def TurnoCartas(nombre):
    total = 0
    eleccion = 1
    i = 1
    deck = []
    print "-Turno de ",nombre,": "

    while (eleccion!=0 & total<21 0="" 11="" 1="" break="" deck.append="" elif="" else:="" i="" if="" ncarta="" numero="" numerosnaturales="[2,3,4,5,6,7,8,9,10]" por="" print="" que="" quieres="" return="" tenga="" time.sleep="" total="" tramposo="" tu="" u="" ue="" valor="">1):
            print "-Total: ", total,"\n"

        if(total<21 0="" 1="" 2="" 3="" 72="" artas:="" blackjack="" carta="" cartas="" deck.append="" deck="" def="" del="" el="" eleccion="0" elif="" else:="" es:="" for="" ganador2j="" ganador="" has="" hecho="" i="" if="" in="" inalizar="" jugador="" l="" mala="" mirar="" n="" nombre="" nombrejugadores.append="" nombrejugadores="" ntroduce="" numero="" numjugadores="" otra="" pedir="" perdido="" print="" range="" respuesta="=2):" return="" suerte="" time.sleep="" total="" turno="" tus="" un="" while="">J2):
        print nombre[0]," Con un Total de ",J1
    elif(J2>J1):
        print nombre[1]," Con un Total de ",J2
    elif(J1==J2):
        print "\nHay un EMPATE!! con un Total de ",J1," en Ambos Jugadores!!"
    else:
        print "\nLos 2 Jugadores PERDIERON!"

def Ganador3J(J1,J2,J3, nombre):
    print "El Ganador es: ",
    time.sleep(3)

    if (J1 > J2 and J1>J3):
        print nombre[0], " Con un Total de ", J1
    elif (J2 > J1 and J2>J3):
            print nombre[1], " Con un Total de ", J2
    elif (J3 > J1 and J3>J2):
            print nombre[2], " Con un Total de ", J3
    elif(J1==J2 and J1!=J3 and J2!=J3):
        print "\nHay un EMPATE!! entre ",nombre[0]," y ",nombre[1]," con un Total de ", J1, " en los Jugadores!!"
    elif (J2 == J3 and J2 != J1 and J3!=J1):
        print "\nHay un EMPATE!! entre ", nombre[1], " y ", nombre[2], " con un Total de ", J2, " en los Jugadores!!"
    elif (J1 == J3 and J1 != J2 and J3!=J2):
        print "\nHay un EMPATE!! entre ", nombre[0], " y ", nombre[2], " con un Total de ", J1, " en los Jugadores!!"
    elif (J1 == J2 and J2 == J3):
        print "\nHay un EMPATE!! con un Total de ", J1, " en TODOS los Jugadores!!"
    else:
        print "\nLos 3 Jugadores PERDIERON!"

#MAIN
continuar = 1
while continuar != 0:
    print "JUEGO DE BLACK JACK"
    print "-"*72
    numjugadores = input("Numero de Jugadores: 1) 1 Jugador  2) 2 Jugadores  3) 3 Jugadores\n")
    NombreJugadores(numjugadores)

    if(numjugadores==1):

        print "Buenas, Jugadores, Vamos a empezar la Partida de BlackJack"
        time.sleep(4)
        print "Inicia el Jugador numero 1"
        time.sleep(2)
        Jugador1 = TurnoCartas(nombrejugadores[0])
        print "Total del Jugador = ",Jugador1,"\n"
        time.sleep(3)
        continuar = input("\nQuieres Jugar Otra Vez???  1)Si   0)No\n")
        del nombrejugadores[:]
        print "-" * 72

    elif(numjugadores==2):

        print "Buenas, Jugadores, Vamos a empezar la Partida de BlackJack"
        time.sleep(4)
        Jugador1 = 0
        Jugador2 = 0
        for i in range(numjugadores):
            print "Inicia el Jugador numero ",i+1
            time.sleep(2)
            if(i==0):
                Jugador1 = TurnoCartas(nombrejugadores[i])
                print "Turno Finalizado. Espera a tu Oponente...\n"
                time.sleep(3)
                print "-" * 72
            else:
                Jugador2 = TurnoCartas(nombrejugadores[i])
                print "Turno Finalizado.\n"

        time.sleep(2)
        print "Eligiendo Ganador",
        time.sleep(2)
        print ".",
        time.sleep(2)
        print ".",
        time.sleep(2)
        print ".\n"
        time.sleep(2)

        Ganador2J(Jugador1,Jugador2,nombrejugadores)
        #jugadores = {nombrejugadores[0]: Jugador1 , nombrejugadores[1]: Jugador2}
        # print "\nEl Ganador es",
        #time.sleep(3)
        #print max(jugadores, key=jugadores.get), " con un Total de ",max(jugadores.values())
        #time.sleep(3)

        continuar = input("\nQuieres Jugar Otra Vez???  1)Si   0)No\n")
        del nombrejugadores[:]
        print "-" * 72

    elif(numjugadores == 3):
        print "Buenas, Jugadores, Vamos a empezar la Partida de BlackJack"
        time.sleep(4)
        Jugador1 = 0
        Jugador2 = 0
        Jugador3 = 0
        for i in range(numjugadores):
            print "Inicia el Jugador numero ", i + 1
            time.sleep(2)
            if (i == 0):
                Jugador1 = int(TurnoCartas(nombrejugadores[i]))
                print "Turno Finalizado. Espera a tu Oponente...\n"
                time.sleep(3)
                print "-" * 72
            elif(i == 1):
                Jugador2 = int(TurnoCartas(nombrejugadores[i]))
                print "Turno Finalizado. Espera a tu Oponente...\n"
                time.sleep(3)
                print "-" * 72
            else:
                Jugador3 = int(TurnoCartas(nombrejugadores[i]))
                print "Turno Finalizado.\n"

        time.sleep(2)
        print "Eligiendo Ganador",
        time.sleep(2)
        print ".",
        time.sleep(2)
        print ".",
        time.sleep(2)
        print ".\n"
        time.sleep(2)

        Ganador3J(Jugador1, Jugador2, Jugador3, nombrejugadores)
        #jugadores = {nombrejugadores[0]: Jugador1, nombrejugadores[1]: Jugador2, nombrejugadores[2]: Jugador3}
        #print "\nEl Ganador es",
        #time.sleep(3)
        #print max(jugadores, key=jugadores.get), " con un Total de ", max(jugadores.values())
        #time.sleep(3)
        continuar = input("\nQuieres Jugar Otra Vez???  1)Si   0)No\n")
        del nombrejugadores[:]

        print "-" * 72

PRACTICA #6: JUEGO DE LOTERIA CON INTERFAZ GRAFICA AUTOR AMBROCIO LAUREANO

#CODIGO
import os
import random
import threading
from Tkinter import *
import PIL
from PIL import Image, ImageTk
import time
import pygame

"""Variables globales"""
imagen=0
stop=0
dir = os.path.dirname(__file__)
Ccartas=dir+"/Cartas/" #establece la ruta hacia las imagenes de cartas
Csonido=dir+"/Sonidos/" #establece la ruta hacia los sonidos
play=1
"""--------------------------------------------------------"""

def setimagen(nombre,x,y): #carga la imagen
    global imagen #Declaro el uso de una variable global
    img = Image.open(nombre) #cargo la imagen mandada como parametro
    img.thumbnail((x, y), Image.ANTIALIAS) #establezco sus dimensiones y la propiedad antialiasado
    imagen = ImageTk.PhotoImage(img) #la convierto a un formato soportado por los widgets de tkinter
    return imagen #retorno el objeto con la imagen

def play():
    global stop,play,TBoton #Declaro el uso de las variables stop y play
    """play: sirve para controlar la pulsasion del boton, si se pulsa una vez el boton jugar en pantalla deberia iniciar el juego
    pero si se vuelve a pulsar deberia detenerse y dado que se usa el mismo boton para ambas acciones la uso para controlar las acciones
    stop: se usa para controlar el hilo de ejecucion declarado, si stop vale 1 debera terminar el hilo, si vale 0 debera continuar hasta que se le indique"""
    if play==1:
        TBoton.set("Pausar")
        t=threading.Thread(target=hilo)
        t.start()
        stop=0 #El hilo continua con normalidad
        play=0 #La proxima vez que se pulse el boton debera entrar en el else
    else:
        TBoton.set("Jugar")
        play=1 #La proxima vez que se pulse el boton debera entrar en el if
        stop=1 #Se detiene el hilo

def reproducirsonido(nombre):
    pygame.init()
    pygame.mixer.music.load(nombre)
    pygame.mixer.music.play()


def hilo():
    global tiempo, cartas, Limagen,stop,Tetiqueta,spin
    cartas = ["EL GALLO", "EL DIABLITO", "LA DAMA", "EL CATRIN", "EL PARAGUAS", "LA SIRENA", "LA ESCALERA",
              "LA BOTELLA", "EL BARRIL", "EL ARBOL", "EL MELON",
              "EL VALIENTE", "EL GORRITO", "LA MUERTE", "LA PERA", "LA BANDERA", "EL BANDOLON", "EL VIOLINCELLO",
              "LA GARZA", "EL PAJARO", "LA MANO", "LA BOTA",
              "LA LUNA", "EL COTORRO", "EL BORRACHO", "EL NEGRITO", "EL CORAZON", "LA SANDIA", "EL TAMBOR",
              "EL CAMARON", "LAS JARAS", "EL MUSICO", "LA ARANA",
              "EL SOLDADO", "LA ESTRELLA", "EL CAZO", "EL MUNDO", "EL APACHE", "EL NOPAL", "EL ALACRAN", "LA ROSA",
              "LA CALAVERA", "LA CAMPANA", "EL CANTARITO",
              "EL VENADO", "EL SOL", "LA CORONA", "LA CHALUPA", "EL PINO", "EL PESCADO", "LA PALMA", "LA MACETA",
              "EL ARPA", "LA RANA"]

    # tiempo=time*1000
    x = 0
    reproducirsonido(Csonido + "inicio.ogg")
    time.sleep(3)
    while True:
        nombre=str(cartas.index(random.choice(cartas))+1)
        carta = Ccartas + nombre + ".png"
        Limagen.config(image=setimagen(carta,400,400))
        Tetiqueta.set("Salio: "+cartas[int(nombre)-1])
        sonido=Csonido+"s_("+nombre+").ogg"
        reproducirsonido(sonido)
        time.sleep(float(spin.get()))
        x = x + 1
        if stop==1:
            break


ventana=Tk()
ventana.config(bg="gray")
contenedor=Frame(ventana,width=700,height=700)
contenedor.pack()
Etitulo=Label(contenedor,text="Loteria Mexicana",font=("Arial",40,"bold")).place(x=120,y=20)
Etiempo=Label(contenedor,text="Tiempo entre cartas: ",font=("Arial",12,"bold"))
Etiempo.place(x=130,y=100)
spin=Spinbox(contenedor,values=[2,3,4,5,6,7,8,9,10,11,12],font=("Arial",12,"bold"))
spin.place(x=295,y=101)
Limagen=Label(contenedor)
Limagen.place(x=300,y=180)

TBoton=StringVar()
TBoton.set("Jugar")
Bplay=Button(contenedor,textvariable=TBoton,command=play)
Bplay.place(x=500,y=98)

Tetiqueta=StringVar()
Enombre=Label(contenedor,textvariable=Tetiqueta,font=("Arial",40,"bold"))
Enombre.place(x=80,y=400)
pygame.init()
ventana.mainloop()

PRACTICA #5: ADIVINA EL NUMERO AUTOR ALEX GUTIERREZ

from random import *
import random
import time
import textwrap


msg = ("El siguiente juego consiste en adivinar el numero en que esta pensando la computadora"
       " es importante mencionar que el numero de intentos se establece conforme a la suerte"
       " en el caso de que menciones un numero por debajo del que se busca aparece un mensaje"
       " diciendo que tu estimacion es muy baja, de igual manera sucede en sentido contrario"
       " solo que aparece un mensaje diciendo que la estimacion es muy alta"
       " si llegas a agotar el numero de intentos pierdes el juego, y si lo deseas puedes volver a jugar mucha suerte")

print(textwrap.fill(msg, width = 70))
print("\nBienvenido al juego adivina el numero")
n=raw_input ("Ingresa tu nombre: ")

back=1
while back==1:
    linea_punteada = 70 * '-'
    print(linea_punteada)

    print(n+" estoy pensando en un numero entre 1 y 5 " + "crees poder adivinarlo?")
    print("La suerte va a decir el numero de intentos que tienes")
    time.sleep(2)
    print "*"
    time.sleep(2)
    print "**"
    time.sleep(2)
    print "***"

    aux=0
    arr=[1,2,3,4,5]
    intentos=random.choice(arr)
    num=randint(1,5)
    print ("Tienes "+str(intentos)+" intentos")


    while auxnum:
            print("Tu estimacion es muy alta")

         elif est==num:
            break
    if num==est:
        print("Good Job "+n+" has adivinado el numero")
    elif num!=est:
        print("Perdiste "+n+" el numero que estaba pensando es:",num)

    print ("Desea volver a jugar? 1.-Si/2.-No")
    back=input("Respuesta: ")

PRACTICA #4: JUEGO ATACA LOS ORCOS

# -*- coding: utf-8 -*-

import random
import textwrap

if __name__ == '__main__':
    seguir_jugando = 1
    ocupantes = ['enemigo', 'amigo', 'no ocupada']
    ancho_linea = 72  # variable de tamano 72
    linea_punteada = ancho_linea * '-'
    print(linea_punteada)
    print("\033[1m" + "Ataca a los Orcos V0.0.1" + "\033[0m")  # 033,1m,0m se utiliza para letras negritas

    # Aqui narra la historia del juego y en que consiste...
    msg = ("La guerra entre los humanos y sus arqueros enemigos, los Orcos, estaba en el aire."
           "Un enorme ejército de orcos se dirigía hacia los territos de los humanos. Destruían"
           "prácticamente todo en su camino. Los grandes reyes de la raza humana, se unieron para"
           " derrotar a su peor enemigo, era la gran batalla de su tiempo. Sir Gandorel, uno de los "
           "valientes caballeros que guardan las llanuras meridionales, inició un largo viaje hacia el este"
           ", a través de un desconocido bosque espeso. Durante dos días y dos noches, se movió con cautela "
           "a través del grueso bosque. En su camino, vio un pequeño asentamiento aislado. Cansado y con "
           "la esperanza de reponer su stock de alimentos, decidió tomar un desvío. Cuando se acercó al pueblo,"
           "vio cinco chozas. No había nadie alrededor. En ese instante, decidió entrar en un choza...")

    print(textwrap.fill(msg, width=ancho_linea))  # para respetar las lineas punteadas y que el texto se encuentre en el
    # con el mismo ancho de las lineas punteadas
    print("\033[1m" + "Misión:" + "\033[0m")
    print("Elige una choza donde poder descansar...")
    print("\033[1m" + "NOTA:" + "\033[0m")
    print("¡Cuidado! Hay enemigos rondando la zona")
    print(linea_punteada)

    while seguir_jugando == 1:
        chozas = []  # definimos un vector vacio en donde se estaran llenando las chozas
        while len(chozas) < 5:  # Definimos un número de asentamiento para establecerlo como amigo o enemigo
            eleccion_aleatoria = random.choice(ocupantes)  # random.choice toma uno de los elementos del vector
            chozas.append(eleccion_aleatoria)  # lo agrega al vector

        msg = "\033[1m" + "Elige una choza, introduce un número entre 1 y 5: " + "\033[0m"
        decision_usuario = input("\n" + msg)
        idx = int(decision_usuario)

        # Pasamos a descubrir cuales son los ocupantes del emplazamiento

        print("Descubriendo los ocupantes...")
        msg = ""
        for i in range(len(chozas)):
            ocupantes_info = "<%d:%s>" % (i + 1, chozas[i])
            if i + 1 == idx:
                ocupantes_info = "\033[1m" + ocupantes_info + "\033[0m"
            msg += ocupantes_info + " "
        print("\t" + msg)
        print(linea_punteada)
        print("\033[1m" + "Entrando en la choza %d..." % idx + "\033[0m")

        if chozas[idx - 1] == 'enemigo':
            print(
            "\033[1m" + "Sir Gandorel ha muerto asesinado por una manada de orcos (Mucha suerte la próxima vez)" + "\033[0m")
        else:
            print("\033[1m" + "¡Felicidades! Sir Gandorel ha podido descansar con éxito" + "\033[0m")
        print(linea_punteada)
        seguir_jugando = input("¿Quieres jugar de nuevo? Si(1)/No(0):")

PRACTICA #3: PUNTO DE VENTA

from Tkinter import *
import tkMessageBox


def SumMul():
    try:
        _e0 = int(v0.get())
        _e0 = _e0 * .50
        _e1 = int(v1.get())
        _e1 = _e1 * 1
        _e2 = int(v2.get())
        _e2 = _e2 * 2
        _e3 = int(v3.get())
        _e3 = _e3 * 5
        _e4 = int(v4.get())
        _e4 = _e4 * 10
        _e5 = int(v5.get())
        _e5 = _e5 * 20
        _e6 = int(v6.get())
        _e6 = _e6 * 50
        _e7 = int(v7.get())
        _e7 = _e7 * 100
        _e8 = int(v8.get())
        _e8 = _e8 * 200
        _e9 = int(v9.get())
        _e9 = _e9 * 500
        _e10 = _e0 + _e1 + _e2 + _e3 + _e4 + _e5 + _e6 + _e7 + _e8 + _e9
        tkMessageBox.showinfo("El resultado es", _e10)
    except ValueError:
        etiqueta.config(text="Introduce un numero entero")


v = Tk()
v.title("")
v.geometry("200x350")

vp = Frame(v)
vp.grid(column=0, row=0, padx=(50, 50), pady=(10, 10))
vp.columnconfigure(0, weight=1)
vp.rowconfigure(0, weight=1)

ET0 = Label(vp, text="MONEDAS")
ET0.grid(column=2, row=1)

e0 = Label(vp, text="0.50")
e0.grid(column=1, row=3)

e1 = Label(vp, text="1.00")
e1.grid(column=1, row=4)

e2 = Label(vp, text="2.00")
e2.grid(column=1, row=5)

e3 = Label(vp, text="5.00")
e3.grid(column=1, row=6)

e3 = Label(vp, text="10.00")
e3.grid(column=1, row=7)

v0 = ""
v0 = Entry(vp, width=5, textvariable=v0)
v0.grid(row=3, column=2)

v1 = ""
v1 = Entry(vp, width=5, textvariable=v1)
v1.grid(row=4, column=2)

v2 = ""
v2 = Entry(vp, width=5, textvariable=v2)
v2.grid(row=5, column=2)

v3 = ""
v3 = Entry(vp, width=5, textvariable=v3)
v3.grid(row=6, column=2)

v4 = ""
v4 = Entry(vp, width=5, textvariable=v4)
v4.grid(row=7, column=2)

ET1 = Label(vp, text="BILLETES")
ET1.grid(column=2, row=9)

e4 = Label(vp, text="20.00")
e4.grid(column=1, row=11)

e5 = Label(vp, text="50.00")
e5.grid(column=1, row=12)

e6 = Label(vp, text="100.00")
e6.grid(column=1, row=13)

e7 = Label(vp, text="200.00")
e7.grid(column=1, row=14)

e8 = Label(vp, text="500.00")
e8.grid(column=1, row=15)

v5 = ""
v5 = Entry(vp, width=5, textvariable=v5)
v5.grid(row=11, column=2)

v6 = ""
v6 = Entry(vp, width=5, textvariable=v6)
v6.grid(row=12, column=2)

v7 = ""
v7 = Entry(vp, width=5, textvariable=v7)
v7.grid(row=13, column=2)

v8 = ""
v8 = Entry(vp, width=5, textvariable=v8)
v8.grid(row=14, column=2)

v9 = ""
v9 = Entry(vp, width=5, textvariable=v9)
v9.grid(row=15, column=2)

b = Button(vp, text="TOTAL", command=SumMul)
b.grid(row=17, column=2, padx=(20, 20), pady=(20, 20))

v.mainloop()

jueves, 11 de octubre de 2018

PRACTICA: VIDEO #2 EN YOUTUBE Tutorial Python 13: Clases y Objetos

class Humano:
    def __init__(self,edad):
        self.edad=edad

    def hablar(self,mensaje):
        print mensaje

pedro= Humano(26)
raul= Humano(21)

print 'Soy Pedro y tengo', pedro.edad
print 'Soy Raul y tengo', raul.edad

pedro.hablar('Hola')
raul.hablar('Hola Pedro')

PRACTICA: VIDEO #1 EN YOUTUBE Python: 11 - Clases (SUMA Y RESTA)

#SUMA
class operaciones:
    def __init__(self,num1,num2):
        self.num1=num1
        self.num2=num2
    def suma(self):
        return self.num1+self.num2
    def resta(self):
        return self.num1-self.num2

obj=operaciones(3,7)
print obj.suma()
CORRIDA EN PANTALLA 
Arroja el resultado de la suma de 3+7= 10
#RESTA
class operaciones:
    def __init__(self,num1,num2):
        self.num1=num1
        self.num2=num2
    def suma(self):
        return self.num1+self.num2
    def resta(self):
        return self.num1-self.num2

obj=operaciones(3,7)
print obj.resta()
CORRIDA EN PANTALLA

UNIDAD 3: TAREA #2 CLASES Y OBJETOS EN PYTHON

CLASES.

Las clases proveen una forma de empaquetar datos y funcionalidad juntos. Al crear una nueva clase, se crea un nuevo tipo de objeto, permitiendo crear nuevas instancias de ese tipo. Cada instancia de clase puede tener atributos adjuntos para mantener su estado. Las instancias de clase también pueden tener métodos (definidos por su clase) para modificar su estado.

Comparado con otros lenguajes de programación, el mecanismo de clases de Python agrega clases con un mínimo de nuevas sintaxis y semánticas. Es una mezcla de los mecanismos de clases encontrados en C++ y Modula-3. Las clases de Python proveen todas las características normales de la Programación Orientada a Objetos: el mecanismo de la herencia de clases permite múltiples clases base, una clase derivada puede sobre escribir cualquier método de su(s) clase(s) base, y un método puede llamar al método de la clase base con el mismo nombre. Los objetos pueden tener una cantidad arbitraria de datos de cualquier tipo. Igual que con los módulos, las clases participan de la naturaleza dinámica de Python: se crean en tiempo de ejecución, y pueden modificarse luego de la creación.


¿Cómo crearíamos una clase en Python? 


La estructura de clase más simple en Python luciría de la siguiente manera:
class ClassName:
   

Como puedes ver, la definición de una clase comienza con la palabra clave class, y className sería el nombre de la clase (identificador). Ten en cuenta que el nombre de la clase sigue las mismas reglas que los nombres de variables en Python, es decir, sólo pueden comenzar con una letra o un subrayado _, y sólo pueden contener letras, números o guiones bajos. Además, según PEP 8 (Guía de estilo para la programación en Python), se recomienda que los nombres de las clases estén capitalizadas.

Ahora vamos a definir una clase Person (persona), que por el momento no contendrá nada, excepto la declaración de pass. Según la documentación de Python:


La sentencia pass no hace nada. Puede ser utilizada cuando se requiere una sentencia sintácticamente pero programa no requiere acción alguna.
class Person:
    pass



Para crear una instancia (objeto) de esta clase, simplemente haremos lo siguiente:

A =  Person()

Esto significa que hemos creado un nuevo objeto jorge del tipo Person. Date cuenta que para crear un objeto solo debemos escribir el nombre de la clase, seguido de unos paréntesis.

Atributos


Los atributos son como propiedades que queremos añadir a la clase (tipo). Por ejemplo, para nuestra clase Person, vamos a añadir dos atributos: name y school, tal que así:
class Person:
    name = ''
    school = ''


Ahora, vamos a crear un nuevo objeto del tipo Person con más detalle, completando estos atributos que acabamos de añadir:
A = Person()
abder.name = 'Adamary'
abder.school = 'INSTITUTO TECNOLOGICO DE MATAMOROS'



Métodos


Los métodos son cómo funciones en Python, ya que se definen con la palabra clave def y cuentan con el mismo formato que las funciones. En nuestra clase, vamos a definir un método que imprima el nombre (name) y la escuela (school) de una persona (Person). La clase se verá de la siguiente manera:

class Person:
    name = ''
    school = ''
     
    def print_name(self):
        print self.name
         
    def print_school(self):
        print self.school
     
A = Person()
A.name = 'Adamary'
A.school = 'INSTITUTO TECNOLOGICO DE MATAMOROS'
A.print_name()
A.print_school()

Vamos a hacer el proceso de imprimir el nombre y la escuela en un solo método, tal que así:
class Person:
    name = ''
    school = ''
     
    def print_information(self, name, school):
        print self.name
        print self.school
             
A = Person()
A.name = 'Adamary'
A.school = 'INSTITUTO TECNOLOGICO DE MATAMOROS'

Inicialización
En la sección anterior, hemos inicializado name y school, dándoles un valor vacío ''. Pero hay una forma más elegante de inicializar variables con sus valores predeterminados. El inicializador es un método especial, con nombre
__init__ (el método se considera especial y será tratado de forma especial, es por eso que tiene subrayados dobles al principio y al final).
class Person:
    def __init__(self, n, s):
        self.name = n
        self.school = s
     
    def print_name(self):
        print self.name
         
    def print_school(self):
        print self.school
     
A = Person('Adamary', 'INSTITUTO TECNOLOGICO DE MATAMOROS')
 
A.print_name()
A.print_school()


miércoles, 10 de octubre de 2018

EJERCICIOS EN CLASE: ARREGLOS

APORTACION ALEX GUTIERREZ
datos = [0,0,0,0,0,0]
for i in range(1,7):
    datos[i-1] = int( input( "Dime el dato numero {}: ".format(i) ))
print ("Los datos al reves son: ")

for i in range(6,0,-1):
    print ( datos[i-1] )



datos = []
#GUARDA DATOS EN EL ARREGLO
for i in range(1,7):
    nuevoDato = int( input( "Dime el dato numero {}: ".format(i) ))
    datos.append(nuevoDato)

print ("Los datos al reves son: ")

#DESPLIEGA LOS DATOS DEL ARREGLO
for i in range(6,0,-1):
    print ( datos[i-1] )



datos = [5, 6, 7, 8, 9]
for i in range(0, 5):
    print datos[i],

print "\n"


datos.remove(6)
for i in range(0, len(datos)):
    print datos[i],

print "\n"


datos[0] = -2

for i in range(0, len(datos)):
    print datos[i],

print "\n"

datos.insert(1, 23)
for i in range(0, len(datos)):
    print datos[i],

print "\n"

datos = datos + [31, 32, 33]
for i in range(0, len(datos)):
    print datos[i],

print "\n



APORTACION ANTONIO HUERTA

UNIDAD 3: TAREA #1 ARREGLOS (ARRAYS)

Que es un arreglo?

Un array es un medio de guardar un conjunto de objetos de la misma clase. Se accede a cada elemento individual del array mediante un número entero denominado índice. 0 es el índice del primer elemento y n-1 es el índice del último elemento, siendo n, la dimensión del array. Los arrays son objetos en Java y como tales vamos a ver los pasos que hemos de seguir para usarlos convenientemente
  • Declarar el array
  • Crear el array
  • Inicializar los elementos del array
  • Usar el array

COMO DECLARAR Y CREAR UN ARRAY


Para declarar un array se escribe:

tipo_de_dato[] nombre_del_array

Para declarar un array de enteros escribimos:

int[] numeros

Para crear un array de 4 número enteros escribimos:

numeros=new int[4]

La declaración y la creación del array se puede hacer en una misma línea:


int[] numeros =new int[4]

La estructura de datos que sirve para almacenar estas grandes secuencias de números (generalmente de tipo float) es el arreglo. Los arreglos tienen algunas similitudes con las listas:


  • los elementos tienen un orden y se pueden acceder mediante su posición,
  • los elementos se pueden recorrer usando un ciclo for.

Sin embargo, también tienen algunas restricciones:

  • todos los elementos del arreglo deben tener el mismo tipo,
  • en general, el tamaño del arreglo es fijo (no van creciendo dinámicamente como las listas),
  • se ocupan principalmente para almacenar datos numéricos.

  • Por ejemplo:

    Encuentre la longitud de una matriz usando len ().
    brands = ["Coke", "Apple", "Google", "Microsoft", "Toyota"]
    num_brands = len(brands)
    print(num_brands)
    

    La salida sólo será 5 ya que la funcion len() da la longitud de las marcas que es 5.

    Eliminar elementos de una matriz usando del, remove () y pop ().
    colors = ["violet", "indigo", "blue", "green", "yellow", "orange", "red"]
    del colors[4]
    colors.remove("blue")
    colors.pop(3)
    print(colors)
    
    Modificación de elementos de una matriz mediante la indexación.

    fruits = ['Apple', 'Banana', 'Mango', 'Grapes', 'Orange']
    fruits[1] = 'Pineapple'
    fruits[-1] = 'Guava'
    print(fruits)
    


    LISTA DE METODOS EN PYTHON


    Métodos

    Funciones

    append()
    agregar elemento al final de la lista
    extend()
    para extender todos los elementos de una lista a la otra lista
    insert()
    para insertar un elemento en el otro índice
    remove()
    para eliminar un elemento de la lista
    pop()
    para eliminar elementos devuelve el elemento en el índice dado
    clear()
    para eliminar todos los elementos de la lista
    índex()
    para devolver el índice del primer elemento emparejado
    count()
    para contar el número de elementos pasados ​​como un argumento
    sort()
    ordenar los elementos en orden ascendente por defecto

    domingo, 7 de octubre de 2018

    UNIDAD 3: PRACTICA 1 CREANDO UN ARCHIVO

    print "Menu\n\n 1).-Capturar nuevo registro\n 2).-Mostrar archivo\n 3).-Eliminar registro\n"
    opcion=raw_input("Elige la opcion: ")
     
    if opcion=="1":
        print "Nuevo registro\n"
        archivo=open("ejemplo2.csv","a")
        nombre=raw_input("Dame nombre: ")
        apellido=raw_input("Dame apellido: ")
        print "Se ha capturado: "+nombre+" con el apellido: "+apellido
        archivo.write(nombre+","+apellido+"\n")
        #archivo.write(",")
        #archivo.write(apellido)
        #archivo.write("\n")
        #archivo.close()
     
     
    elif opcion=="2":
        print "Mostrar registros\n"
        archivo=open("ejemplo2.csv")
        print(archivo.read())
        archivo.close()
     
    elif opcion=="3":
        archivo=open("ejemplo2.csv","a")
        archivo.truncate()
        print "Registros Eliminados"
        archivo.close()
     
    else:
        print "Debes elegir una opcion"
    





    #CREANDO EL MISMO ARCHIVO PERO CON WHILE Y FUNCION
    def archivo():
      opcion="1"
     
      while opcion!="4":
         print "Menu\n\n 1).-Capturar nuevo registro\n 2).-Mostrar archivo\n 3).-Eliminar registro\n 4).-Salir\n"
         opcion = raw_input("Elige la opcion: ")
     
         def ingresar():
             print "Nuevo registro\n"
             archivo = open("ejemplo2_moodificado.csv", "a")
             nombre = raw_input("Dame nombre: ")
             apellido = raw_input("Dame apellido: ")
             print "Se ha capturado: " + nombre + " con el apellido: " + apellido
             archivo.write(nombre + "," + apellido + "\n")
             # archivo.write(",")
             # archivo.write(apellido)
             # archivo.write("\n")
             # archivo.close()
     
         def mostrar():
               print "Mostrar registros\n"
               archivo = open("ejemplo2_moodificado.csv")
               print(archivo.read())
               archivo.close()
     
         def borrar():
                archivo = open("ejemplo2_moodificado.csv", "a")
                archivo.truncate()
                print "Registros Eliminados"
                archivo.close()
     
         def salir():
              print "Gracias por utilizar el programa"
     
         if opcion=="1":
           ingresar()
     
         elif opcion=="2":
           mostrar()
     
         elif opcion=="3":
             borrar()
     
         elif opcion=="4":
             salir()
     
    archivo()
    

    IMPRIMIR NUMEROS DEL 1 AL 100 Y CALCULAR LA SUMA DE LOS NUMEROS PARES E IMPARES (UTILIZANDO ARREGLOS CON FUNCION)

    def funcion(numfin):
     n=1
     pares=0
     numpares=[]
     impares=0
     numimpares=[]
     while n<=numfin:
        if n%2==0:
            pares+=n
            numpares.append(n)
        else:
            impares+=n
            numimpares.append(n)
        n+=1
     
     print "\nSuma pares que se utilizaron\n",numpares
     print "\nSuma total de numeros pares=",pares
     
     print "\nSuma impares que se utilizaron\n",numimpares
     print "\nSuma total de numeros impares=",impares
     
     
     
    numfin=int(input("Ingrese el ultimo numero: \n"))
    funcion(numfin)
    

    IMPRIMIR NUMEROS DEL 1 AL 100 Y CALCULAR LA SUMA DE LOS NUMEROS PARES E IMPARES (UTILIZANDO ARREGLOS)

    n=1
    pares=0
    numpares=[]
    impares=0
    numimpares=[]
     
    numfinal=input("Ingrese el ultimo numero: \n")
     
    while n<=numfinal:
        if n%2==0:
            pares+=n
            numpares.append(n)
        else:
            impares+=n
            numimpares.append(n)
        n+=1
     
    print "\nSuma pares que se utiilizacon\n",numpares
    print "\nSuma total de numeros pares=",pares
    print "\nSuma impares que se utiilizacon\n",numimpares
    print "\nSuma total de numeros impares=",impares
    

    IMPRIMIR LOS NUMEROS DEL 1 AL 100 Y MOSTRAR LOS NUMEROS PARES E IMPARES (CON FUNCION)

    def funcion(inicio,final):
        p=0
        im=0
        while inicio<=final:
            print inicio
            if inicio%2==0:
                p=p+inicio
            else:
                im=im+inicio
            inicio=inicio+1
     
        print "La suma de los numeros pares es: ",im
        print "La suma de los numeros impares es",p
     
     
     
     
    inicio=int(input("Ingrese el numero donde iniciara: "))
    final=int(input("Ingrese el numero final: "))
    funcion(inicio,final)
    

    IMPRIMIR LOS NUMEROS DEL 1 AL 100 Y MOSTRAR LOS NUMEROS PARES E IMPARES

    n=1
    p=0
    i=0
    while n<=100:
        print n
        if n%2==0:
            p+=n
        else:
            i+=n
        n+=1
    print "\nLasuma de los pares es igual a %i" %p
    print "La suma de los impares es igual a %i"%i
    

    NUMEROS IMPARES AGREGANDO DATOS DESDE TECLADO CON WHILE

    def evaluar(numeroin,numerofin):
        if numeroin>=numerofin:
            sumaimpm(numeroin,numerofin)
        else:
            print "El numero inicial debe ser mayor que el numero final"
     
    def sumaimpm(numeroin,numerofin):
        sumaimp=0
        while numeroin>=numerofin:
            residuo=numeroin%2
            if residuo!=0:
                sumaimp=sumaimp+numeroin
            numeroin=numeroin-1
        print "Suma de impares: ",sumaimp
     
    numeroin=int(input("Dame el numero inicial: "))
    numerofin=int(input("Dame el numero final: "))
    evaluar(numeroin,numerofin)
    
    
    
    

    NUMEROS IMPARES AGREGANDO LOS DATOS DESDE EL TECLADO Y CON FUNCION

    def sumaimpm(numeroin,numerofin):
        sumaimp=0
        while numeroin>=numerofin:
            residuo=numeroin%2
            if residuo!=0:
                sumaimp=sumaimp+numeroin
            numeroin=numeroin-1
        print "Suma de impares: ",sumaimp
     
    numeroin=int(input("Dame el numero inicial: "))
    numerofin=int(input("Dame el numero final: "))
    sumaimpm(numeroin,numerofin
    

    NUMEROS IMPARES DEL 100 AL 1

    numeroin=100
    sumaimp=0
    while numeroin>=1:
        residuo=numeroin%2
        if residuo!=0:
            sumaimp=sumaimp+numeroin
        numeroin=numeroin-1
    print "Suma de los impares: ",sumaimp
    

    SUMA NUMEROS DISMINUYENDO CON FUNCIÓN Y WHILE

    def sumareg(numeroin,numerofin):
        suma=0
        while numeroin>=numerofin:
            suma=suma+numeroin
            numeroin=numeroin-2
        print "Suma",suma
     
    numeroin=int(input("Dame el numero inicial: "))
    numerofin=int(input("Dame el numero final: "))
    sumareg(numeroin,numerofin
    

    SUMA DE NUMEROS DISMINUYENDO

    numeroin=50
    suma=0
    while numeroin>=1:
        suma+=numeroin
        numeroin-=2
    print "Suma:",suma
    

    SUMA DE NUMEROS CONSECUTIVOS

    def sumanum(numeroin, mumerofin, ):
        suma = 0
        while numeroin <= numerofin:
            suma = suma + numeroin
            numeroin = numeroin + 1
        print suma
    
    
    numeroin = int(input("Dame el numero inical:"))
    numerofin = int(input("Dame el numero final:"))
    sumanum(numeroin, numerofin)
    
    
    

    NUMEROS DE 4 EN 4 CON FOR

    def incrementa4(numeroin,mumerofin,):
        i = numeroin
        for i in range (numeroin,numerofin,4):
            print "Numero",i
            numeroin+=4
     
    numeroin=int(input( "Dame el numero inical:"))
    numerofin=int(input("Dame el numero final:"))
    incrementa4(numeroin,numerofin)
    
    
    

    U4: PRACTICA #21 JUEGO EN 3D