获取生日:输入一个18位身份证号,输出生日,以YYYY-MM-DD格式显示。例如:输入 450522200103168735 ,输出 2001-03-16 。
时间: 2023-05-12 15:03:51 浏览: 94
以下是获取生日的 Python 代码:
```python
import datetime
def get_birthday(id_number):
year = id_number[6:10]
month = id_number[10:12]
day = id_number[12:14]
return datetime.date(int(year), int(month), int(day)).strftime('%Y-%m-%d')
id_number = '450522200103168735'
birthday = get_birthday(id_number)
print(birthday)
```
输出结果为:2001-03-16
相关问题
j'ava输入一个18位身份证号,输出生日,以YYYY-MM-DD格式显示。
可以使用Java中的SimpleDateFormat类来解析身份证号中的生日信息,代码如下:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class Main {
public static void main(String[] args) {
String idCard = "110101199001011234"; // 18位身份证号
String birthday = idCard.substring(6, 14); // 截取出生日信息
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = sdf.parse(birthday);
System.out.println(sdf.format(date));
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
输出结果为:1990-01-01
java输入身份证号获取生日以YYYY-MM-DD格式显示。
可以使用 SimpleDateFormat 类来实现这个功能。以下是示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入身份证号:");
String idCard = scanner.nextLine();
String birthday = getBirthdayFromIdCard(idCard);
System.out.println("生日为:" + birthday);
}
public static String getBirthdayFromIdCard(String idCard) {
String birthdayStr = idCard.substring(6, 14);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date birthday = sdf.parse(birthdayStr);
return sdf.format(birthday);
} catch (Exception e) {
e.printStackTrace();
return "";
}
}
}
```
输入身份证号后,程序会输出生日,格式为 YYYY-MM-DD。