【问题标题】:Discord.py Question with weird betting winningsDiscord.py 奇怪的投注奖金问题
【发布时间】:2021-06-30 10:18:20
【问题描述】:

正如标题所示,我的投注命令的标题有些问题。有时它不显示,而在其他时候它显示为带有很多 1 和 0 的东西。我认为它可能是二进制的,但我不知道。 代码: https://replit.com/@jsun3/Betting-cmd#main.py

堆栈在格式化时很烦人,所以我在 replit 中做了。

Ceres 的回答有所帮助,但导致了另一个错误。当我赢了有时它算-10韩元(意思是我输了10)。 图片:

代码的新更新: https://replit.com/@jsun3/Betting-cmd#main.py

【问题讨论】:

  • 请注意,我可能会在 10 到 14 小时内回复,因为我很快就要睡觉了。
  • 你能说明发生了什么错误吗?
  • 哦,又是你!嗯,它真的是一个错误,它更像是一个错误。是的,我会在 1 分钟后上传一张它的照片。
  • 它现在应该在那里
  • 你用什么调用它?我假设 10

标签: discord.py embed title


【解决方案1】:

问题是amount是一个字符串,在python中你可以乘一个字符串来重复它。这正是正在发生的事情。 解决它

@client.command(aliases=["gamble"])  # ASSUME I HAVE CLIENT DEFINED BC IN MY REAL CODE IT IS DEFINED.
async def bet(ctx, amount: int = None):

由于 discord.py 为参数实现了类型转换器,因此您的金额将转换为整数,并且会像 1 一样相乘。

【讨论】:

  • 哦,好的,我会试试的,非常感谢。
  • 它可以工作,但它会导致其他问题,请再次查看帖子。
  • 正在使用默认乘数 (-1)。错误来自您的代码逻辑,而不是来自答案
  • 那么我应该将默认值更改为 1 吗?如果我这样做,它会得到相反的结果,输就是赢,有时赢就是输。那我该怎么办?
  • if 2 <= you - me >= 4。这应该是2 <= you - me <= 4,否则只有当差值大于4时才会执行
猜你喜欢
  • 1970-01-01
  • 2020-06-27
  • 2016-12-01
  • 1970-01-01
  • 2012-07-30
  • 2021-01-07
  • 2015-02-27
  • 2018-06-26
  • 2011-08-13
相关资源
最近更新 更多