python从键盘上输入年份,查找该年份在身份证号中是否存在,如果存在,输出所在的索引,不存在,输出-1
时间: 2024-11-14 17:24:37 浏览: 8
在Python中,你可以创建一个函数,接收用户输入的年份,然后遍历一个假设的身份证号码字符串来查找该年份是否存在于其中。身份证号码的第7到第14位代表出生年份,所以我们只需要在这部分进行搜索。这里是一个简单的示例:
```python
def search_year_in_id():
id_format = "xxxxxxxyyzzzzz"
input_year = int(input("请输入一个年份:"))
def is_valid_year(year_str):
# 假设输入的字符表示的是四位数的年份
return len(year_str) == 4 and year_str.isdigit()
def find_year_index(year):
for i in range(7, 11): # 身份证年份位置在第7到第10位
if is_valid_year(id_format[i:i+4]):
if int(id_format[i:i+4]) == year:
return i
return -1
index = find_year_index(input_year)
print(f"{input_year}在身份证号中的索引为:{index}")
search_year_in_id()
```
在这个程序中,我们首先获取用户的输入,然后检查它是否符合四位数的条件。接着,我们在身份证号码的指定范围内寻找对应的四位数,如果找到匹配的年份,就返回其索引;如果没有找到,则返回-1。
注意,这是一个简化的版本,实际身份证号码格式可能存在变化,例如包含“-”分隔符。在实际应用中,你可能需要根据正式规范进行调整。
阅读全文