AMcoder - javascript, python, java, html, php, sql

Discord Python Bot - Օգտատիրոջ մուտքագրում

Այսպիսով, ես ուզում եմ ստեղծել տարաձայնություն python բոտ, որն ընդունում է օգտվողի մուտքերը: այն, ինչ ես ուզում եմ անել, ինչ-որ բանի % հաշվելն է:

Ահա թե ինչ եմ ուզում անել.

մուտքագրեք պատկերի նկարագրությունը այստեղ

Ես այս կոդը պատրաստել եմ նախքան անհամաձայնության բոտը սկսելը: Բայց ես չգիտեմ, թե ինչպես ընդունել օգտվողի մուտքերը:

userInputOriginalPrice = float(input("Enter the original price: "))

userInputPercentage = float(input("Enter how much percantage: "))

discount = ( userInputPercentage / 100) * userInputOriginalPrice

finalCost = userInputOriginalPrice - discount

print("You saved", discount, ". Your total is", finalCost)

  • Փորձե՞լ եք որևէ բան discord api մոդուլի հետ, ինչպիսին է discord.py-ը: Սովորաբար օգտատիրոջ հաղորդագրության բովանդակությունը դիտարկվում է որպես մուտքագրում: Այս կայքում արդեն կան ռեսուրսներ, թե ինչպես ստանալ օգտվողների հաղորդագրություններ և ստանալ դրանց բովանդակությունը: Դուք որևէ խնդիր ունեցե՞լ եք դա փորձելիս: 08.03.2020

Պատասխանները:


1

Դուք կարող եք օգտագործել client.wait_for() մեթոդը, որն ընդունում է իրադարձություն և ստուգում, այնպես որ

import discord
from discord.ext import commands

client = commands.Bot(commands_prefix='!')

@commands.command()
async def calculate_percentage(ctx):

    await ctx.send('Enter the original price: ')
    message_response = client.wait_for('message', check=lambda m: m.user == ctx.user)
    original_price = float(message_response.content)

    await ctx.send('Enter how much percantage: ')
    message_response = client.wait_for('message', check=lambda m: m.user == ctx.user)
    input_percantage = float(message_response.content)

    # Your calculations
    discount = ( input_percantage / 100) * original_price 
    finalCost = original_price - input_percantage

    await ctx.send(f"You saved {discount}. Your total is, {finalCost}")

client.run('Bot Token')
01.04.2020

2

Դա անելու ավելի հեշտ միջոց կլինի պիթոնի ներկառուցված .split() մեթոդը:

Օրինակ, երբ օգտվողը մուտքագրում է !percentage 300 60

## this will split your message where there is a space
_, orig_price, discount = message.split(" ")

սա կխնայի ժամանակը և կդարձնի ավելի հարմար միջավայր, իսկ կոդը շատ ավելի ընթեռնելի է

27.01.2021
Նոր նյութեր

Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..