找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2988|回复: 1

[已回复] 超级新手求教!!!

1

主题

1

帖子

1

积分

贫民

积分
1
497923735 发表于 2016-12-16 17:36:13 | 显示全部楼层 |阅读模式
想请教一下  以下这段代码中, if len() 后的 三个条件 能不能合并成一个条件呢? 就是不用码成三个条件语句  我是初学者 ,只是好奇而已。
def 号码监测 ():
while True:
输入号码 = input('请输入你的手机号码:')
中国移动 = [134,135,136,137,138,139,150,151,152,157,158,159,182,183,184,187,147,178,1705]
中国联通 = [130, 131, 132, 155, 156, 185, 186, 145, 176, 1709]
中国电信 = [133,153,180,177,189,181,1700]
前三位数字 = int(输入号码[0:3])
前四位数字 = int(输入号码[0:4])
if len(输入号码) == 11:
if 前三位数字 in 中国移动 or 前四位数字 in 中国移动 :
print('监测结果:中国移动')
print('我们正发送短信到您到手机上请稍后',输入号码)
elif 前三位数字 in 中国联通 or 前四位数字 in 中国联通 :
print('监测结果:中国联通')
print('我们正发送短信到您到手机上请稍后', 输入号码)
elif 前三位数字 in 中国电信 or 前四位数字 in 中国电信 :
print('监测结果:中国电信')
print('我们正发送短信到您到手机上请稍后', 输入号码)
else:
print('您输入的不是有效号码,请确认后重新输入')
else :
print('您输入的号码不足11位或超过11位,请确认后重新出入')
号码监测()

回复

使用道具 举报

0

主题

27

帖子

27

积分

贫民

积分
27
maximal_ideal 发表于 2016-12-17 09:35:16 | 显示全部楼层
在下愚见
可以用字典来处理吧
phone_num_dict = {'中国联通':[111,222,...],
                             '中国移动':[444,555]}

for opertor in phone_num_dict:
    if input_num in phone_num_dict[opertor]:
         print opertor
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表