path=r"D:\各种模\选股结果"
os.listdir(path)
['ipynb_checkpoint','module.ipynb','文件夹1','文件夹2','表格2.xlsx']
我们也可以对os.listdir()函数的结果进行筛选,将目录排除在外,只保留文件名。
from openpyxl import Workbook
import os
#定义函数:功能为获取到的文件列表写入excel文件。
#接收文件列表作为参数,并根据使用的操作系统决定存储路径(虽然一般没有必要,但是在指定路径下的存储需要使用此功能)
def write_in(obj_lst, path = os.getcwd(), plat = os.sys.platform):
wb = Workbook()#新建工作簿
sht = wb.active#激活工作表
for i in range(len(obj_lst)):
sht[f'A{i+1}'] = obj_lst[i]#将文件名依次存储在最左边一列中
if plat == 'darwin':#判断系统
save_path = f'{path}/ReadMe.xlsx'
else:
save_path = f'{path}\\ReadMe.xlsx'
wb.save(save_path)#保存文件
print(f'已完成写入。\nexcel文件路径为{save_path}')#提示完成进度和文件保存位置
return save_path
#定义函数:获取指定目录下的所有文件名
def get_obj(path):
names = os.listdir(path)
files = []
for i in names:
if '.' in i:
files.append(i)
return files
#定义函数:与用户交互
def inter():
path = input('请输入要检索的目录的绝对路径\n>>[')
write_in(get_obj(path))
#调用函数
if __name__ == '__main__':
inter()
如果您所说的“文件”也包含目录(即文件夹)的话,请使用如下代码:
from openpyxl import Workbook
import os
def write_in(path, obj_lst, plat):
wb = Workbook()
sht = wb.active
for i in range(len(obj_lst)):
sht[f'A{i+1}'] = obj_lst[i]
if plat == 'darwin':
save_path = f'{path}/ReadMe.xlsx'
else:
save_path = f'{path}\\ReadMe.xlsx'
wb.save(save_path)
print(f'已完成写入。\nexcel文件路径为{save_path}')
return save_path
def get_obj(path):
names = os.listdir(path)
files = []
for i in names:
files.append(i)
return files
def inter():
path = input('请输入要检索的目录的绝对路径\n>>[')
write_in(os.getcwd(), get_obj(path), os.sys.platform)
inter()
你可以使用 Python 的 os 模块来获取文件夹中的文件名。
import os
# 获取文件夹中的文件名
folder = '/path/to/folder'
filenames = os.listdir(folder)
print(filenames)
然后,你可以使用 Python 的 openpyxl 库来写入 Excel 文件。例如:
import openpyxl
# 创建新的 Excel 文件
workbook = openpyxl.Workbook()
# 获取工作表
worksheet = workbook.active
# 循环文件名列表并写入工作表
for i, filename in enumerate(filenames):
cell = worksheet.cell(row=i+1, column=1)
cell.value = filename
# 保存 Excel 文件
workbook.save('filenames.xlsx')
可以使用 os 模块中的 listdir() 函数来获取文件夹中的所有文件名。然后,你可以使用 pandas 模块中的 DataFrame 对象来创建一个 Excel 表格。你可以使用 pandas 中的 to_excel() 函数将数据写入表格中。
下面是一个示例代码,它获取文件夹中的所有文件名并将它们写入一个名为 "file_names.xlsx" 的 Excel 表格中:
import os
import pandas as pd
# 获取文件夹中的所有文件名
folder_path = '/path/to/folder'
file_names = os.listdir(folder_path)
# 将文件名存储在 pandas DataFrame 中
df = pd.DataFrame(file_names, columns=['File Name'])
# 将数据写入 Excel 表格
df.to_excel('file_names.xlsx', index=False)
import os
os.system('python -m pip install xlwt')
import xlwt
book = xlwt.Workbook(encoding='utf-8',style_compression=0)
sheet = book.add_sheet('test',cell_overwrite_ok=True)
col = ('列①','列②','列③','列④','列⑤','列⑥','列⑦','列⑧')
for i in range(0,8):
sheet.write(0,i,col[i])
datalist = [['test'],['test']]
type(datalist)
path=r""#dir
pathl=os.listdir(path)
pathl
type(pathl)
pathl1=[]
pathl1.append(pathl)
pathl1
#pathl=[pathl]
#pathl='['+pathl+']'
pathl1[0]
for i in range(0,1):
data = pathl1[i]
for j in range(0,12):
sheet.write(i+1,j,data[j])
savepath = path+'co0l.xls'
book.save(savepath)
如果我的这个文件夹内的文件全是txt文件,并且每天更新,并且我想把每个文件内的内容写入这个excel里,文件内容生成一列,并在后两列按日期和文件名,分别对应