欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python提取字符串中间部分(.partition())

程序员文章站 2022-07-02 23:22:15
方法使用.partition()函数。举例要提取的内容比如批量提取文件名中包含的年份:# 先把所有待提取的文件放入同一个文件夹folder = r"C:\Users\abc\Desktop\redo\demo\" # 文件夹路径# get_sortedlist是我自己定义的按顺序提取文件夹中文件路径的函数file_list = get_sortedlist(folder) 自定义函数的具体内容:get_sortedlist得到文件路径列表:注意Windows下即使定义folder路径...

方法

使用.partition()函数。

举例

要提取的内容

比如批量提取文件名中包含的年份:

# 先把所有待提取的文件放入同一个文件夹
folder = r"C:\Users\abc\Desktop\redo\demo\" # 文件夹路径
# get_sortedlist是我自己定义的按顺序提取文件夹中文件路径的函数
file_list = get_sortedlist(folder) 

自定义函数的具体内容:get_sortedlist

得到文件路径列表:

注意Windows下即使定义folder路径是使用的
r"C:\Users\abc\Desktop\redo\demo\",读取到的文件路径列表中路径仍然会是"C:\\Users\\abc\\Desktop\\redo\\demo\\2010-2830.csv"
Mac下文件路径比较简单,'/Users/apple/Downloads/形式就行。

["C:\\Users\\abc\\Desktop\\redo\\demo\\2010-2830.csv",
"C:\\Users\\abc\\Desktop\\redo\\demo\\2011-3682.csv",
"C:\\Users\\abc\\Desktop\\redo\\demo\\2012-4726.csv",
"C:\\Users\\abc\\Desktop\\redo\\demo\\2013-4827.csv",
"C:\\Users\\abc\\Desktop\\redo\\demo\\2014-5273.csv"]
字符串提取

自定义一个使用.partition()做字符串提取函数:

def get_str_btw(s, f, b):
    '''提取字符串s中,字符串f和b的中间部分'''
    par = s.partition(f)
    return (par[2].partition(b))[0][:]
调用:
for filename in file_list:
	front_str = "C:\\Users\\abc\\Desktop\\redo\\demo\\"
	year = get_str_btw(filename,front_str,".csv") [0:4] # 年份为截取到的字符串的前4位
print(year,end=' ')

注意这里截取字符串的front_str不能用r"C:\Users\abc\Desktop\redo\demo\"

结果

2010 2011 2012 2013 2014

本文地址:https://blog.csdn.net/Parzival_/article/details/107269111