Python if with many or in a contracted form(Python 如果有很多或以收缩形式)
问题描述
我正在学习 python,但我发现自己在尝试创建如果用户输入 y 或 yes 时应该为 true 的 if 语句时迷失了方向.
I'm learning python and I found myself lost trying to create a an if statement that should be true if the user input y or yes.
#!/usr/bin/env python3
user_input = input('Would you like to go on?')
lowui = user_input.lower
if lowui == ('y' or 'yes'):
print('You want to go on')
else
print('See you later, bye')
问题在于,只有当我输入 y 而不是输入 yes 时它才会变为 true.如果我删除括号,它总是错误的.好的,我可以做一个解决方法,比如
The problem is that it becomes true only if I type y but not for yes. If I remove the parenthesis it becomes always false. Ok, I can do a workaround like
if lowui == 'y' or lowui == 'yes':
但我想知道是否有任何技巧不会强迫我写这么多次变量.
提前谢谢你.
but I was wondering if there is any trick that don't force me to write so many times tha variable.
Thank you in advance.
推荐答案
改成
if lowui in ('y', 'yes'):
这也是错误的:
lowui = user_input.lower
应该是:
lowui = user_input.lower() # Actually call the lower function
这篇关于Python 如果有很多或以收缩形式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Python 如果有很多或以收缩形式
基础教程推荐
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
