编写程序 提示用户输入一个社保号码 其格式为DDD-DD-DDDD,其中D是一个数字判断输入是否有效
时间: 2024-09-27 15:12:38 浏览: 40
编写程序提示用户输入社保号码时,首先需要确保输入符合特定的格式,即由三位数字(DDD)加破折号,再接着是两位数字,再次加破折号,最后是四位数字(DDDD)。你可以按照以下步骤实现:
```python
def validate_ssn(ssn):
# 检查字符串长度是否为9,并由数字组成
if len(ssn) != 9 or not ssn.isdigit():
return False
# 分割字符串成三部分
parts = ssn.split('-')
# 检查每部分的长度
if len(parts) != 3 or not all(len(part) == 3 for part in parts):
return False
# 检查每一位是否都在0-9之间
for part in parts:
if not all(0 <= int(digit) <= 9 for digit in part):
return False
return True
# 主程序
while True:
ssn_input = input("请输入社保号码(格式:DDD-DD-DDDD):")
if validate_ssn(ssn_input):
print("输入的社保号码有效。")
break
else:
print("输入无效,请检查格式并重新输入。")
```
在这个程序中,我们定义了一个`validate_ssn`函数,它接受社保号码作为输入并检查其是否符合要求。如果输入有效,会跳出循环并提示用户输入有效;否则,会显示错误信息并请求重新输入。
阅读全文