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

如何将输入变量除以2?Python代码第7、14行问题求助

问题修复:实现随机数除以2的验证功能

原代码核心问题

  • 第7行:QA = input('Press "K" key to begin') 逻辑错误:input会等待用户输入回车,和keyboard.is_pressed('K')的键盘监听逻辑冲突,且QA存储的是无效输入内容,并非后续需要的答案。
  • 第14行:判断逻辑完全失效:未接收用户输入的除法结果,用错误变量QA做比较;Number本身是整数,无需int(Number);用户输入的字符串未转成数值,无法和除法结果(浮点数/整数)比较;随机数可能生成奇数,不符合"可被2整除"的需求。

修复后的代码

import keyboard
import random

def main():
    # 生成1-99之间的偶数,确保可以被2整除
    number = random.randrange(2, 100, 2)
    start = False

    print('Press "K" key to begin')
    # 循环监听K键,直到用户按下
    while not start:
        if keyboard.is_pressed('K'):
            start = True

    input('I\'m thinking of a random number and I want that number divisible by two\nPress Enter to continue')
    print(f"The number is: {number}")
    # 接收用户输入的答案并转为整数
    user_answer = int(input('Please divide this by two: '))
    
    # 验证答案是否正确
    if user_answer == number / 2:
        print("Correct!")
    else:
        print("Wrong answer!")

main()

修复说明

  1. 移除函数参数中无用的Number和Start,直接在函数内部初始化变量
  2. 用random.randrange(2, 100, 2)生成指定范围的偶数,避免出现无法被2整除的情况
  3. 替换原有的错误input+键盘判断逻辑,用循环监听K键直到用户按下
  4. 正确接收用户输入的除法结果,并转换为整数类型
  5. 修正答案判断逻辑,使用正确的变量和类型匹配
  6. 优化提示语,让流程更清晰直观

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 03:45:41