python读取当前文件所在的文件夹名称

时间: 2023-08-19 17:04:48 浏览: 66
可以使用Python内置的`os`模块来读取当前文件所在的文件夹名称。可以通过以下代码实现: ```python import os current_dir = os.path.dirname(os.path.abspath(__file__)) folder_name = os.path.basename(current_dir) print(folder_name) ``` 其中,`os.path.abspath(__file__)`是获取当前文件的绝对路径,`os.path.dirname()`则可以获取当前文件所在的文件夹路径,最后使用`os.path.basename()`方法获取文件夹名称。
相关问题

Python读取当前程序目录input文件夹下多个zip文件,将zip里面的Excel第0个sheet表里的A5单元格里的图片保存,图片保存路径在当前程序output文件夹里,新建1个文件夹名为 Excel的sheet名代码,每行添加注释

好的,我理解了你的问题。以下是解决方案: 1. 首先,你需要导入Python的zipfile和openpyxl库。 2. 接着,你可以使用os库获取当前程序所在目录,然后在input文件夹下查找所有的zip文件: ```python import os import zipfile input_dir = os.path.join(os.getcwd(), "input") zip_files = [f for f in os.listdir(input_dir) if f.endswith('.zip')] for zip_file in zip_files: with zipfile.ZipFile(os.path.join(input_dir, zip_file)) as z: # 处理第0个sheet表 sheet_name = z.sheetnames[0] sheet = z.open(sheet_name) workbook = openpyxl.load_workbook(sheet) worksheet = workbook.active image_cell = worksheet['A5'] image_path = image_cell.value # 保存图片到输出文件夹 output_dir = os.path.join(os.getcwd(), "output", sheet_name) os.makedirs(output_dir, exist_ok=True) image_name = os.path.basename(image_path) with open(os.path.join(output_dir, image_name), 'wb') as f: f.write(z.read(image_path)) # 添加注释 comments = ['这是图片', '这是另外一个注释'] for i, comment in enumerate(comments): cell = worksheet.cell(row=image_cell.row+i+1, column=1) cell.comment = openpyxl.comments.Comment(comment, 'author') workbook.save(os.path.join(output_dir, 'output.xlsx')) ``` 这段代码将遍历input文件夹下的所有zip文件,打开每个zip文件并处理第0个sheet表。获取图片路径后,将图片保存到output文件夹并创建Excel文件,最后在每行下方添加注释。 注意,保存的图片文件名可能会与其原始名称不同,因此代码中使用os.path.basename()方法获取保存到输出文件夹中的图片文件名。 希望这个解决方案可以帮助你,如有问题可以继续提问。

写一个python脚本,把我指定文件夹以及其子目录内的txt文件,全部转化为csv格式。然后将csv文件用当前文件夹名称命名。

以下是一个可能的Python脚本,可以实现将指定文件夹及其子目录内的txt文件转换为csv格式,并将csv文件以当前文件夹名称命名: ```python import os import csv # 定义函数将txt文件转换为csv文件 def txt_to_csv(txt_file, csv_file): with open(txt_file, 'r') as f_in, open(csv_file, 'w', newline='') as f_out: reader = csv.reader(f_in, delimiter='\t') # 假设txt文件用tab分隔 writer = csv.writer(f_out) writer.writerows(reader) # 获取当前脚本所在的文件夹名称 folder_name = os.path.basename(os.path.dirname(os.path.abspath(__file__))) # 遍历指定文件夹及其子目录内的txt文件,并将其转换为csv文件 for root, dirs, files in os.walk('./my_folder'): # 将'./my_folder'改为指定的文件夹路径 for file in files: if file.endswith('.txt'): txt_path = os.path.join(root, file) csv_path = os.path.join(root, folder_name + '.csv') txt_to_csv(txt_path, csv_path) ``` 注意,在代码中,需要将`./my_folder`改为指定的文件夹路径,即要转换的txt文件所在的文件夹。此外,代码中使用了`csv`模块来读取和写入csv文件。在实际使用中,也可以使用其他第三方库或自行编写读写文件的函数来实现转换。

相关推荐

最新推荐

recommend-type

HP-Socket编译-Linux

HP-Socket编译-Linux
recommend-type

JavaScript_生活在Discord上的开源社区列表.zip

JavaScript
recommend-type

JavaScript_MultiOn API.zip

JavaScript
recommend-type

JavaScript_简单和完整的React DOM测试工具,鼓励良好的测试实践.zip

JavaScript
recommend-type

JavaScript_成为一个Nodejs开发者.zip

JavaScript
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

可见光定位LED及其供电硬件具体型号,广角镜头和探测器,实验设计具体流程步骤,

1. 可见光定位LED型号:一般可使用5mm或3mm的普通白色LED,也可以选择专门用于定位的LED,例如OSRAM公司的SFH 4715AS或Vishay公司的VLMU3500-385-120。 2. 供电硬件型号:可以使用常见的直流电源供电,也可以选择专门的LED驱动器,例如Meanwell公司的ELG-75-C或ELG-150-C系列。 3. 广角镜头和探测器型号:一般可采用广角透镜和CMOS摄像头或光电二极管探测器,例如Omron公司的B5W-LA或Murata公司的IRS-B210ST01。 4. 实验设计流程步骤: 1)确定实验目的和研究对象,例如车辆或机器人的定位和导航。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。