python if语句带有大量or条件判断,该如何简化?

假设有N个学生,根据用户输入的学号判断是男是女。ifid==1or2or3……:print(“男生”)elifid==4or7or18or19……:print(“女生”)... 假设有N个学生,根据用户输入的学号判断是男是女。
if id == 1 or 2 or 3……:
print(“男生”)
elif id ==4 or 7 or 18 or 19……:
print(“女生”)
else:
print("没有该学生")
--------------------------
如果有100个,200个学生,或者更多。or语句就能写满一屏幕。请问如何重构简化?
展开
 我来答
百度网友c565fb9
2021-05-21 · TA获得超过441个赞
知道小有建树答主
回答量:400
采纳率:88%
帮助的人:109万
展开全部

可以用两个元祖或者列表存储学号,然后判断学号所在的元祖,代码如下:





boys = (1,2,3)

girls = (4,7,18,19)

id = 18

if id in boys:

print("男生")

elif id in girls:

print("女生")

else:

print("没有该学生")


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一姐韩梅
2021-05-20 · TA获得超过895个赞
知道小有建树答主
回答量:764
采纳率:58%
帮助的人:223万
展开全部
if id in [1, 2, 3...]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式