如何从带年月的Python列表中提取仅年份数据?
提取Python列表中的年份信息
这里有几种简单直接的实现方式:
方法1:字符串切片(推荐,适配固定格式)
你的列表里每个元素都是「4位年份+3位月份缩写」的固定格式,直接截取前4位字符再转成整数即可:
# 原始列表 year_list = ['1997JAN', '1997FEB', '1997MAR', '1997APR', '2021SEP', '2021OCT'] # 提取年份 extracted_years = [int(item[:4]) for item in year_list]
运行后extracted_years的结果就是[1997, 1997, 1997, 1997, 2021, 2021]。
方法2:正则表达式(适配格式不固定的场景)
如果之后年份在字符串中的位置可能变化,用正则匹配4位数字的方式更灵活:
import re year_list = ['1997JAN', '1997FEB', '1997MAR', '1997APR', '2021SEP', '2021OCT'] extracted_years = [int(re.search(r'\d{4}', item).group()) for item in year_list]
这个方法会自动定位每个字符串里的4位数字并提取为年份,适配更多格式变化的情况。
内容的提问来源于stack exchange,提问作者swin cine
相关产品推荐
相关产品推荐

