1、# 获取当前工作目录的上一级目录 dir_path = os.path.dirname(os.path.abspath('.'))
2、获取当前路径:
# 获取当前脚本文件的绝对路径
script_path = os.path.abspath(__file__)
# 获取程序所在目录
dir_path = os.path.dirname(script_path)
3、获取当前路径的文件名:file_name = os.path.basename(os.getcwd())
获取当前路径下所有文件名:file_names = os.listdir(os.getcwd())
4、字符串正则化
字符串正则化(string normalization)是指将不同尽管在表意上相同的字符串转换成规范的标准形式的过程。
Python中可以使用re模块实现字符串正则化。
具体步骤如下:
导入re模块:import re
定义正则表达式规则:pattern = re.compile(r’正则表达式’)
使用sub函数进行字符串正则化:new_string = re.sub(pattern, replacement, old_string)
其中,r’正则表达式’是用于匹配字符串的正则表达式,replacement是要替换的内容,old_string是要正则化的字符串,得到的新字符串为new_string。
代码:文章来源:https://www.toymoban.com/news/detail-628269.html
import re
old_string = 'abc123def456'
pattern = re.compile(r'\d')
new_string = re.sub(pattern, '#', old_string)
print(new_string)
5、获取当前程序的文件名(py文件名):filename = os.path.basename(__file__)
6、python根据文件夹下文件名进行分类,将具有相同部分的数据进行整合输出。
要求:文件夹中有1_2019.csv,1_2020.csv,2_2019.csv,2_2020.csv等文件,现在想根据1和2,将1_2019.csv,1_2020.csv合并输出,2_2019.csv,2_2020.csv合并输出成新的dataframe文件1_merge.csv和2_merge.csv。
代码:文章来源地址https://www.toymoban.com/news/detail-628269.html
import glob
import pandas as pd
# 获取所有csv文件的路径
files = glob.glob('/path/to/files/*.csv')
# 根据前缀将文件路径分组
file_groups = {}
for file in files:
prefix = file.split('/')[-1].split('_')[0]
if prefix not in file_groups:
file_groups[prefix] = []
file_groups[prefix].append(file)
# 遍历每组文件,将它们合并为一个DataFrame对象
for prefix, files in file_groups.items():
dfs = []
for file in files:
df = pd.read_csv(file)
dfs.append(df)
merged_df = pd.concat(dfs, axis=0)
# 将合并后的DataFrame保存到文件中
output_file = f"{prefix}_merge.csv"
merged_df.to_csv(output_file, index=False)
到了这里,关于python os模块获取文件路径的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!