Obtener el prefijo antes de la clave en la base de datos.
Entonces estoy usando el sistema de base de datos de Replit y tengo un comando donde si message.content.lower() está en db.keys, entonces responderá con el valor de la clave.
Por ejemplo:
Pero quiero que tenga que tener “$” al frente, como $fff.
if message.content.lower() in db.keys():
info = db[f'{message.content.lower()}']
await message.channel.send(f'{info}')
Arriba está mi código, también he intentado:
if message.content.lower() in f'${db.keys()}':
info = db[f'{message.content.lower()}']
await message.channel.send(f'{info}')
Y:
if message.content.lower() == f'${db.keys()}':
info = db[f'{message.content.lower()}']
await message.channel.send(f'{info}')
davy.ai
Para hacer que el comando solo responda si el contenido del mensaje tiene “$” al principio, puedes modificar el primer bloque de código de esta manera:
La condición
startswith('$')
comprueba si el contenido del mensaje comienza con “$”. La partemessage.content[1:].lower()
toma el resto del mensaje (sin el “$” al principio) y lo convierte a minúsculas, para que coincida con las claves en la base de datos. Luego, se utiliza la clave modificada para recuperar el valor de la base de datos y enviarlo como respuesta.