Python - 从 excel 列列表创建多个文件夹
Python - Create multiple folders from an excel column list
我基本上是在尝试让 Python 在一个目录中创建一堆文件夹,每个文件夹的名称都基于 Excel 文件中的列表。该列表位于 D 列,标题为 "Folder Name".
我已经能够对单个单元格执行此操作,但很难弄清楚如何对多个单元格执行此操作。我到目前为止的代码如下。
非常感谢您的帮助 - 我对此很陌生!`
import os
import openpyxl
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir (EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook (EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name ('Sheet1')
folderName = sheet ['D2'].value
baseDir = FOLDER_CREATION_LOCATION
os.makedirs(os.path.join(baseDir, folderName))
print ("\nFolder created in: ", os.path.join(baseDir, folderName))
for 循环?
import os
import openpyxl
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir (EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook (EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name ('Sheet1')
baseDir = FOLDER_CREATION_LOCATION
col = sheet['D']
for cell in col:
folderName = cell.value
os.makedirs(os.path.join(baseDir, folderName))
print ("\nFolder created in: ", os.path.join(baseDir, folderName))
您必须遍历所有列值。这对我有用(openpyxl v2.5):
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir(EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook(EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name('Sheet1')
col_values = [cell.value for col in sheet.iter_cols(
min_row=2, max_row=None, min_col=4, max_col=4) for cell in col]
for value in col_values:
folderName = value
baseDir = FOLDER_CREATION_LOCATION
os.makedirs(os.path.join(baseDir, folderName))
print("\nFolder created in: ", os.path.join(baseDir, folderName))
我基本上是在尝试让 Python 在一个目录中创建一堆文件夹,每个文件夹的名称都基于 Excel 文件中的列表。该列表位于 D 列,标题为 "Folder Name".
我已经能够对单个单元格执行此操作,但很难弄清楚如何对多个单元格执行此操作。我到目前为止的代码如下。
非常感谢您的帮助 - 我对此很陌生!`
import os
import openpyxl
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir (EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook (EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name ('Sheet1')
folderName = sheet ['D2'].value
baseDir = FOLDER_CREATION_LOCATION
os.makedirs(os.path.join(baseDir, folderName))
print ("\nFolder created in: ", os.path.join(baseDir, folderName))
for 循环?
import os
import openpyxl
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir (EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook (EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name ('Sheet1')
baseDir = FOLDER_CREATION_LOCATION
col = sheet['D']
for cell in col:
folderName = cell.value
os.makedirs(os.path.join(baseDir, folderName))
print ("\nFolder created in: ", os.path.join(baseDir, folderName))
您必须遍历所有列值。这对我有用(openpyxl v2.5):
def folder_creation(EXCEL_FILE_DIRECTORY, FOLDER_CREATION_LOCATION, EXCEL_FILE_NAME):
os.chdir(EXCEL_FILE_DIRECTORY)
workbook = openpyxl.load_workbook(EXCEL_FILE_NAME)
sheet = workbook.get_sheet_by_name('Sheet1')
col_values = [cell.value for col in sheet.iter_cols(
min_row=2, max_row=None, min_col=4, max_col=4) for cell in col]
for value in col_values:
folderName = value
baseDir = FOLDER_CREATION_LOCATION
os.makedirs(os.path.join(baseDir, folderName))
print("\nFolder created in: ", os.path.join(baseDir, folderName))