python - 条件结构——“if”和“elif”——没有显示正确的结果
问题描述
该程序应该向我显示正确的结果。例如,如果 cor 等于 'vermelho',则打印 ('sua Paleta equivale ao por do sol'),但不起作用。
class Bola:
def escolha(self, cor):
self.cor = cor
def paleta(self):
if self.cor == 'vermelho' or 'laranja' or 'lilas' or 'amarelo':
print('sua paleta equivale ao por do sol')
elif self.cor == 'azul' or 'branco':
print('sua paleta equivale ao ceu')
else:
print('paleta nao definida')
bola = Bola()
bola.escolha('azul')
bola.paleta()
解决方案
你有他们的陈述是这样的:
if a == 'b' or 'c':
print('xyz')
这是在问:如果 a 的值为 'b' 或 'c' 为 True,则 print('xyz')。你需要做的是:
if a == 'b' or a == 'c':
print('xyz')
这将(希望)给你你想要的结果。另一种方法:
correct_responses = ['b', 'c', 'd']
if a in correct_responses:
print('xyz')
希望这可以帮助!
推荐阅读
- python - sqlalchemy 过滤少数具有不同数据类型的列
- c# - Selenium:从电子邮件文本字段/文本框中获取字符串
- java - 如何修改现有的jar文件?
- c++ - 如何动态优化多字段比较中的字段顺序
- cron - crontab 没有删除文件夹中的文件
- sql - 在 SQL Server 2012 中使用 SP_AddRole 添加角色时,数据库中已有一个名为“Test”的对象
- powershell - 使用 powershell 更新重复数组的字段值
- c# - SKCanvas 中的高效线条绘制
- ssh - ssh-copy-id rootname@ipaddress 的问题
- angular - 在角度我想根据路由器链接显示/隐藏某些元素?