0

`

import pymysql
import random
import time
from colorama import Fore, Back, Style, init
well='''
    print("==================================================")
    print("=                                                =") 
    print('=                      Darkyxs                   =')
    print('=                    I AM A Man                  =')
    print("=                                                =") 
    print("=  Who Live a Stranger Life, are deamon´s        =") 
    print("=  Inside my Head.                               =")
    print("=                                                =")
    print("=                                                =") 
    print("=                                                =")
    print("=                                                =") 
    print("=                                                =") 
    print("=                                                =")
    print("=                                                =") 
    print("=                                                =") 
    print("=                                                =")
    print("=                                                =")                                               
    print("==================================================")
    '''
 
chose = ('Humano','Elfo', 'Orco') 
clases = ('Mago', 'Guerrero', 'Ladron')
player = ()
pas_ = ()

n = 20
s_ = stre = random.randrange(n)
i_ = inte = random.randrange(n)
c_ = cons = random.randrange(n)
h_ = hp = random.randrange(n)
l_ = luck = random.randrange(n)
m_ = mana = random.randrange(n)

class Players:

    def __init__(self):
        self.cnn = pymysql.connect(host='localhost', user='root', password='',database='player')
       
    def welcome():
        print('Hola')
        time.sleep(1)
        print()
        name = input(f'Como te llamas? ').capitalize()
        
        print(f'Hola {name}'); print(' Estas entrando al mundo de Darkyxs.')
        time.sleep(1)
        print("Un Mundo de Magia y Oscuridad que hay que salvar.")
        time.sleep(1)
        player = input((f'{name} Como se llamara tu personaje? ')).capitalize()
        time.sleep(1)
        pas_ = input('Elige una Contraseña: ')
        print(f'Bienvenido al Mundo de Darkyxs {player}.') 
        
        
    welcome()
    def create(self,name, Stre, Inte, Cons, Hp, Luck, Mana,password):            
        
        cur = self.cnn.cursor()
        sql='''INSERT INTO players (name, Stre, Inte, Cons, Hp, Luck, Mana, password) 
        VALUES ('{}','{}','{}','{}','{}','{}','{}','{}')'''.format(name, Stre, Inte, Cons, Hp, Luck, Mana, password)
        cur.execute(sql)
        self.cnn.commit()
        cur.close()
        return
    create(player,s_,i_,c_,h_,l_,m_,pas_)
    print('Usuario creado') 
`

in this function i want to add into the db a variables, but i get an error whit one of these variables, password.

i get in the console this:

Como te llamas? dan Hola Dan Estas entrando al mundo de Darkyxs. Un Mundo de Magia y Oscuridad que hay que salvar. Dan Como se llamara tu personaje? luffy Elige una Contraseña: 12345 Bienvenido al Mundo de Darkyxs Luffy. Traceback (most recent call last): File "i:\code\game\darkxys\main.py", line 39, in <module> class Players: File "i:\code\game\darkxys\main.py", line 70, in Players create(player,s_,i_,c_,h_,l_,m_,pas_)

`TypeError: Players.create() missing 1 required positional argument: 'password'

i try to fix the proble changing the position of the variable and taking it out of the function.

import pymysql
import random
import time
from colorama import Fore, Back, Style, init


chose = ('Humano','Elfo', 'Orco') 
clases = ('Mago', 'Guerrero', 'Ladron')

player = ()
   #Variables

init(autoreset=True)
print(Fore.RED + "==================================================")
print("=                                                =") 
print('=                      Darkyxs                   =')
print('=                    I AM A Man                  =')
print("=                                                =") 
print("=  Who Live a Stranger Life, are deamon´s        =") 
print("=  Inside my Head.                               =")
print("=                                                =")
print("=                                                =") 
print("=                                                =")
print("=                                                =") 
print("=                                                =") 
print("=                                                =")
print("=                                                =") 
print("=                                                =") 
print("=                                                =")
print("=                                                =")                                               
print(Fore.RED + "==================================================")
time.sleep(1)
print('Como te llamas?')

name = input()

print(f'Hola {Fore.RED + name.capitalize()}'); print(Fore.RESET +' Estas entrando al mundo de Darkyxs.')
time.sleep(1)
print("Un Mundo de Magia y Oscuridad que hay que salvar.")
time.sleep(1)
print("¿Que Raza Quieres Ser?")
time.sleep(1)
    
print("=========================")
print("=      Razas            =") 
print("=                       =")
print(f"=  1.  Humano          =")
print(f"=  2.  Elfo            =")
print(f"=  3.  Orco            =")
print("=========================")

#Eligiendo Razas #Función para que repita en caso de que sea invalido

def raza(razas = input().capitalize()):

    while True:
      
      if razas in chose:

        print(f'Has Elegido {razas}')
        break
      
      try:
        razas = input('Elige una Raza de la lista ').capitalize()
      except:
        print('Elige una Raza de la lista ') 
raza()
time.sleep(1)
#Eligiendo Clase
         
print("Elige una Clase:" )

print("=========================")
print("=      Clases           =") 
print("=                       =")
print(f"=  1.  Mago            =")
print(f"=  2.  Guerrero        =")
print(f"=  3.  Ladron          =")
print("=========================")

def clase_(clase = input().capitalize()):

  while True:
    
    if clase in clases:
      
      print(f'Has Elegido {clase}')
      break
    try:
      clase = input('Elige una Clase de la lista ').capitalize()

    except: 
     print('Elige una Clase de la lista ')

clase_()
time.sleep(1)

print(f'{name.capitalize()} Como se llamara tu personaje?')

player = input()
time.sleep(1)

print(f'Bienvenido al Mundo de Darkyxs {player.capitalize()}.')

pas_ = password = input('Elige una Contraseña: ')

print('Usuario creado')

n = 20
s_ = stre = random.randrange(n)
i_ = inte = random.randrange(n)
c_ = cons = random.randrange(n)
h_ = hp = random.randrange(n)
l_ = luck = random.randrange(n)
m_ = mana = random.randrange(n)

print("====================================")
print("=      Puntos Habilidad            =") 
print("=                                  =")
print(f"=  Str =     {stre}                     =")
print(f"=  Int =     {inte}                    =")
print(f"=  Cons =    {cons}                    =")
print(f"=  HP =      {hp}                    =")
print(f"=  Luck =    {luck}                     =")
print(f"=  Mana =    {mana}                     =")
print("====================================")


con=pymysql.connect(host='localhost', user='root', password='',database='player')
print(con)

def insert_players(name, Stre, Inte, Cons, Hp, Luck, Mana, password):
  cur = con.cursor()
  sql="INSERT INTO players (name, Stre, Inte, Cons, Hp, Luck, Mana, password) VALUES ('{}','{}','{}','{}','{}','{}','{}','{}')".format(name, Stre, Inte, Cons, Hp, Luck, Mana, password)
  cur.execute(sql)
  n=cur.rowcount
  con.commit()
  cur.close()
  return n
print(insert_players(player,s_,i_,c_,h_,l_,m_,pas_))

    

i expect add a variable password into the database, but i get an error whit these variable i dont know why i try whitout functions and it work fine

0 Answers0