You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现:任务超时后每超10秒扣除1枚用户金币

实现超时扣金币的Python逻辑

核心逻辑很明确:先算出实际耗时超出限时的部分,每满10秒扣除1枚金币,不足10秒的部分不扣。下面是具体实现代码:

# 基础参数设置
initial_coins = 10
time_limit = 40

# 用户完成任务的实际耗时(可替换为任意数值)
actual_time = 50

# 计算超出限定时间的时长
over_time = actual_time - time_limit

# 计算需要扣除的金币数:超出时间每10秒扣1枚,不足10秒不扣,且扣除数不能为负
coins_deducted = max(0, over_time // 10)

# 更新剩余金币,确保金币不会变成负数
final_coins = max(0, initial_coins - coins_deducted)

# 输出结果
print(f"实际耗时{actual_time}秒,扣除{coins_deducted}枚金币,剩余金币:{final_coins}")

代码说明

  • 参数定义:先明确初始金币、任务限时和实际耗时三个变量,实际耗时可以根据需求动态传入(比如从用户输入获取)
  • 超时计算:over_time得到实际耗时和限时的差值,若实际耗时未超过限时,差值为负数
  • 扣除逻辑:用整数除法//计算超出时长里包含多少个10秒,再通过max(0, ...)确保不会出现负的扣除数(即未超时不扣金币)
  • 金币保底:最后用max(0, ...)保证剩余金币不会低于0,避免出现负金币的不合理情况

测试案例

  • 当actual_time=50时,超时10秒,扣除1枚金币,剩余9枚
  • 当actual_time=60时,超时20秒,扣除2枚金币,剩余8枚
  • 当actual_time=45时,超时5秒,扣除0枚金币,剩余10枚
  • 当actual_time=30时,未超时,扣除0枚金币,剩余10枚
  • 当actual_time=140时,超时100秒,扣除10枚金币,剩余0枚

内容的提问来源于stack exchange,提问作者Fusion Developers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 09:20:27