python提取文件名中的年份
时间: 2024-09-22 10:06:38 浏览: 56
在Python中,如果你想要从文件名中提取年份,你可以利用字符串的处理功能,特别是当文件名有特定格式包含年份时。假设文件名通常遵循"YYYY-MM-DD"这样的日期格式,你可以使用正则表达式库`re`来进行匹配。
这是一个简单的例子:
```python
import os
import re
def extract_year(file_path):
# 使用正则表达式匹配四位数的年份
pattern = r'\d{4}' # 匹配四位数字
match = re.search(pattern, os.path.basename(file_path))
if match:
return match.group() # 返回匹配到的部分
else:
return None # 如果没有找到年份,则返回None
# 示例
file_name = "example_2023-05-01.txt"
year = extract_year(file_name)
print(f"提取的年份: {year}")
```
这个函数会从给定的文件名中查找并返回第一个四位数的子串,即年份部分。
相关问题
依次输出excel表格中的年份python
可以使用Python的pandas库来读取excel文件,并且获取其中的年份数据。可以按照以下步骤进行:
1. 安装pandas库:在命令行窗口中输入`pip install pandas`,等待安装完成。
2. 使用pandas读取excel文件:使用pandas的`read_excel()`函数读取excel文件,并将其存储为DataFrame对象。
```python
import pandas as pd
df = pd.read_excel('filename.xlsx')
```
3. 提取年份数据:利用pandas的`dt`属性,将日期数据转换为年份数据,并使用`unique()`函数提取所有不同的年份。
```python
years = df['date'].dt.year.unique()
```
4. 输出年份数据:使用`print()`函数输出所有的年份。
```python
for year in years:
print(year)
```
完整代码如下:
```python
import pandas as pd
df = pd.read_excel('filename.xlsx')
years = df['date'].dt.year.unique()
for year in years:
print(year)
```
其中,`filename.xlsx`为要读取的excel文件名,`date`为excel表格中存储日期的列名。
依次输出excel表格中的年份并存入数组python
可以按照上一个问题的方法读取excel文件并提取年份数据,并将其存入一个Python列表中。可以按照以下步骤进行:
1. 安装pandas库:在命令行窗口中输入`pip install pandas`,等待安装完成。
2. 使用pandas读取excel文件:使用pandas的`read_excel()`函数读取excel文件,并将其存储为DataFrame对象。
```python
import pandas as pd
df = pd.read_excel('filename.xlsx')
```
3. 提取年份数据:利用pandas的`dt`属性,将日期数据转换为年份数据,并使用`unique()`函数提取所有不同的年份。
```python
years = df['date'].dt.year.unique()
```
4. 存入Python列表中:使用Python的列表推导式,将所有的年份存入一个Python列表中。
```python
year_list = [year for year in years]
```
完整代码如下:
```python
import pandas as pd
df = pd.read_excel('filename.xlsx')
years = df['date'].dt.year.unique()
year_list = [year for year in years]
print(year_list)
```
其中,`filename.xlsx`为要读取的excel文件名,`date`为excel表格中存储日期的列名。最后,利用`print()`函数输出Python列表中的年份数据。
阅读全文