python - Python 嵌套 if
问题描述
我对如何使我的程序打印为男性感到困惑。我应该使用嵌套的 if 来询问人们的姓名和头衔(医生、女性、男性),然后打印出女士姓名、先生姓名或博士姓名。如果有人知道我遇到的问题,请回复。
name = input("Enter your name : ")
title = input("Enter your title (doctor, female, male) : ")
female = ("Ms.")
doctor = ("Dr.")
male = ("Mr.")
if title == "doctor":
if title != "male":
print(doctor, name)
else:
print(male, name)
else:
print(female, name)
解决方案
如果条件为真, Anif
只会执行其主体的内容。这里因为“男”的测试在“医生”的测试里面,你已经知道title
是“医生”,所以它永远不可能是“男”。
您对男性的检查应该在else
分支内:
if title == "doctor":
print(doctor, name)
else:
if title == "male":
print(male, name)
else:
print(female, name)
或者您应该使用通常的收缩,在 Python 中称为elif
:
if title == "doctor":
print(doctor, name)
elif title == "male":
print(male, name)
else:
print(female, name)
推荐阅读
- java - 从android volley向laravel api发送请求
- html - 如何使子固定DIV相对于父固定div?
- flutter - 在颤动中覆盖chrome强制黑暗模式?
- database - cassandra 读取查询在不同的 GCP [印度和 GCP 美国] 中花费时间
- oledb - OLEDB 中的隐式连接
- php - 我可以在不先选择数据库的情况下使用 Laravel 的 Schema::createDatabase() 吗?
- mongodb - 生产系统上的MongoDB一次性查询负载大
- javascript - Chart.js 控制台 JS 错误,同时在单击事件上销毁图表
- flutter - 如何在 Android Studio 中更改 Flutter 的 Cubit 创建模板?
- sql - 透视过去几年的月度数据