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

如何从Inquirer获取布尔值(True/False)并排除该问题参与后续计算?

使用Inquirer获取布尔值并排除结果参与后续计算

当然可以,你只需要对Inquirer返回的结果做简单转换,同时避免后续代码引用该结果即可。

实现方式

  • 方法一:手动转换List类型结果
    针对你当前的List类型提问,只需将用户选择的字符串转为布尔值,后续不引用该值就不会参与计算:

    import inquirer
    
    breakfast = [
        inquirer.List('breakfast',
                      message="Do you take breakfast?",
                      choices=['Yes', 'No'],
                      ),
    ]
    answers = inquirer.prompt(breakfast)
    # 转换为布尔值
    has_breakfast = answers['breakfast'] == 'Yes'
    # 仅在需要的地方使用,后续代码不引用has_breakfast即可
    if has_breakfast:
        print("你吃了早餐")
    else:
        print("你没吃早餐")
    
  • 方法二:使用Confirm类型(更简洁)
    Inquirer自带Confirm类型,会直接返回布尔值,无需手动转换:

    import inquirer
    
    answer = inquirer.prompt([
        inquirer.Confirm('breakfast', message="Do you take breakfast?")
    ])
    has_breakfast = answer['breakfast']
    # 后续代码不引用该变量,就不会参与计算逻辑
    

排除结果参与后续计算的关键

只要后续代码中不再使用转换后的布尔值变量,或者直接在条件判断中使用转换结果而不存储到变量中,就能避免该结果进入后续计算:

import inquirer

answers = inquirer.prompt([
    inquirer.List('breakfast', message="Do you take breakfast?", choices=['Yes', 'No'])
])
# 直接用在条件判断里,不保存变量,后续自然不会用到
if answers['breakfast'] == 'Yes':
    print("早餐时间到!")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 21:17:37