Código Juego Palabras Python
Código Juego Palabras Python
1.0.1 Variables
[ ]: cont = 0
cont2 = 0
pistas1 =["mejor amigo del hombre","animal de cuatro patas","ladra"]
pistas2=["Está hecha de tela","posee mangas","sirve para vestir el tronco"]
pistas3=["lugar para habitar","tiene puertas y ventanas","sinónimo de hogar"]
1.0.2 Cliente 1
[ ]: def cliente1():
idSocketClient1,direccion1 = nombreSocket.accept()
global cont
while True:
mensajeRecibido = idSocketClient1.recv(1024)
texto = mensajeRecibido.decode("utf-8")
print(texto)
if cont <3:
print('contador esta')
print(cont)
if texto == 'perro':
idSocketClient1.send("USTED GANÓ LA PALABRA ES PERRO".encode())
break
else:
if cont==0 :
idSocketClient1.send(pistas1[0].encode())
elif cont==1:
idSocketClient1.send(pistas1[1].encode())
elif cont==2:
idSocketClient1.send(pistas1[2].encode())
print (str(direccion1) + "cliente 1 envio: ",texto)
1
cont = cont+1
else:
if cont>=3 and cont<6:
if texto == 'camisa':
idSocketClient1.send("USTED GANÓ LA PALABRA ES CAMISA".
,→encode())
break
else:
if cont==3 :
idSocketClient1.send(pistas2[0].encode())
elif cont==4:
idSocketClient1.send(pistas2[1].encode())
elif cont==5:
idSocketClient1.send(pistas2[2].encode())
print (str(direccion1) + "cliente 1 envio: ",texto)
cont = cont+1
else:
if cont>=6 and cont<9:
if texto == 'casa':
idSocketClient1.send("USTED GANÓ LA PALABRA ES CASA".
,→encode())
break
else:
if cont==6 :
idSocketClient1.send(+pistas3[0].encode())
elif cont==7:
idSocketClient1.send(pistas3[1].encode())
elif cont==8:
idSocketClient1.send(pistas3[2].encode())
print (str(direccion1) + "cliente 1 envio: ",texto)
cont = cont+2
1.0.3 Cliente 2
[ ]: def cliente2():
idSocketClient2,direccion2 = nombreSocket.accept()
global cont2
while True:
mensajeRecibido2 = idSocketClient2.recv(1024)
texto2 = mensajeRecibido2.decode("utf-8")
print(texto2)
if cont2 <3:
2
print('contador esta')
print(cont2)
if texto2 == 'perro':
idSocketClient2.send("USTED GANÓ LA PALABRA ES PERRO".encode())
break
else:
if cont2==0 :
idSocketClient2.send(pistas1[0].encode())
elif cont2==1:
idSocketClient2.send(pistas1[1].encode())
elif cont2==2:
idSocketClient2.send(pistas1[2].encode())
print (str(direccion2) + "cliente 1 envio: ",texto2)
cont2 = cont2+1
else:
if cont2>=3 and cont2<6:
if texto2 == 'camisa':
idSocketClient2.send("USTED GANÓ LA PALABRA ES CAMISA".
,→encode())
break
else:
if cont2==3 :
idSocketClient2.send(pistas2[0].encode())
elif cont2==4:
idSocketClient2.send(pistas2[1].encode())
elif cont2==5:
idSocketClient2.send(pistas2[2].encode())
print (str(direccion2) + "cliente 2 envio: ",texto2)
cont2 = cont2+1
else:
if cont2>=6 and cont2<9:
if texto2 == 'casa':
idSocketClient2.send("USTED GANÓ LA PALABRA ES CASA".
,→encode())
break
else:
if cont2==6 :
idSocketClient2.send(+pistas3[0].encode())
elif cont2==7:
idSocketClient2.send(pistas3[1].encode())
elif cont2==8:
idSocketClient2.send(pistas3[2].encode())
print (str(direccion2) + "cliente 2 envio: ",texto2)
cont2 = cont2+2
3
print ('terminó la comunicación con cliente 2')
idSocketClient2.close()
2 Código Cliente 1
[ ]: # -*- coding: utf-8 -*-
"""
Spyder Editor
4
except ConnectionRefusedError:
bandera=False
print('Intente conectarse al servidor nuevamente')
def run1():
global cont
global a
txt.delete("1.0","end")
a = inp1.get()
s = 'palabra ingresada por cliente 1: %s' % (a)
cont += 1
txt.insert(END, s) #mostrar e
inp1.delete(0, END) #borrar entrada
print(cont)
"en este caso la estructura while mantiene la conexión"
print('la bandera es: ')
print(bandera)
if (bandera):
print(a)
paquete = a.encode()
try:
nombreSocket.send(paquete)
print('se envió el paquete')
#nombreSocket.close()
mensajeRecibido2 = nombreSocket.recv(1024)
texto2 = mensajeRecibido2.decode("utf-8")
print('\n'+texto2)
txt.insert(END, '\nPista: '+texto2) #mostrar e
if(texto=='cerrar'):
"nombreSocket.close()"
print('terminó la aplicación ganó')
except ConnectionResetError:
nombreSocket.close()
print('terminó la aplicación')
#interfaz gráfica
root = Tk()
root.geometry('460x240')
root.title('Interfaz Gráfica')
5
lb1.place(relx=0.0, rely=0.1, relwidth=0.8, relheight=0.1)
inp1 = Entry(root)
inp1.place(relx=0.1, rely=0.2, relwidth=0.3, relheight=0.1)
txt = Text(root)
txt.place(rely=0.6, relheight=0.4)
root.mainloop()
3 Código Cliente 2
[ ]: # -*- coding: utf-8 -*-
"""
Spyder Editor
6
bandera=False
print('Intente conectarse al servidor nuevamente')
def run1():
global cont
global a
txt.delete("1.0","end")
a = inp1.get()
s = 'palabra ingresada por cliente 1: %s' % (a)
cont += 1
txt.insert(END, s) #mostrar e
inp1.delete(0, END) #borrar entrada
print(cont)
"en este caso la estructura while mantiene la conexión"
print('la bandera es: ')
print(bandera)
if (bandera):
print(a)
paquete = a.encode()
try:
nombreSocket.send(paquete)
print('se envió el paquete')
#nombreSocket.close()
mensajeRecibido2 = nombreSocket.recv(1024)
texto2 = mensajeRecibido2.decode("utf-8")
print('\n'+texto2)
txt.insert(END, '\nPista: '+texto2) #mostrar e
if(texto=='cerrar'):
"nombreSocket.close()"
print('terminó la aplicación ganó')
except ConnectionResetError:
nombreSocket.close()
print('terminó la aplicación')
#interfaz gráfica
root = Tk()
root.geometry('460x240')
root.title('Interfaz Gráfica')
7
inp1 = Entry(root)
inp1.place(relx=0.1, rely=0.2, relwidth=0.3, relheight=0.1)
,→arriba a abajo
txt = Text(root)
txt.place(rely=0.6, relheight=0.4)
root.mainloop()