python如何将一个文件夹下的所有excel读取,并每一个文件的第一列存为list

作者&投稿:蒸志 (若有异议请与网页底部的电邮联系)
Python如何将一个列表写入到一个excel表中的一列,求Python代码,谢啦!~

import xlwtf = xlwt.Workbook() #创建工作簿sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheetl_=[1,2,3,4,5]for i in range(len(l_)): sheet1.write(0,i,i)#表格的第一行开始写。第一列,第二列。。。。 #sheet1.write(0,0,start_date,set_style('Times New Roman',220,True))f.save('text.xls')#保存文件

大数据处理经常要用到一堆表格,然后需要把数据导入一个list中进行各种算法分析,简单讲一下自己的做法:
1.如何读取excel文件
网上的版本很多,在xlrd模块基础上,找到一些源码:
[python] view plain copy
import xdrlib ,sys
import xlrd
def open_excel(file="C:/Users/flyminer/Desktop/新建 Microsoft Excel 工作表.xlsx"):
data = xlrd.open_workbook(file)
return data
#根据索引获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_index:表的索引
def excel_table_byindex(file="C:/Users/flyminer/Desktop/新建 Microsoft Excel 工作表.xlsx",colnameindex=0,by_index=0):
data = open_excel(file)
table = data.sheets()[by_index]
nrows = table.nrows #行数
ncols = table.ncols #列数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):
row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list
#根据名称获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_name:Sheet1名称
def excel_table_byname(file="C:/Users/flyminer/Desktop/新建 Microsoft Excel 工作表.xlsx",colnameindex=0,by_name=u'Sheet1'):
data = open_excel(file)
table = data.sheet_by_name(by_name)
nrows = table.nrows #行数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):
row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list

def main():
tables = excel_table_byindex()
for row in tables:
print(row)
tables = excel_table_byname()
for row in tables:
print(row)
if __name__=="__main__":
main()
最后一句是重点,所以这里也给代码人点个赞!最后一句让代码里的函数都可以被复用,简单地说:假设文件名是a,在程序中import a以后,就可以用a.excel_table_byname()和a.excel_table_byindex()这两个超级好用的函数了。
2.然后是遍历文件夹取得excel文件以及路径:,原创代码如下:
[python] view plain copy
import os
import xlrd
import test_wy
xpath="E:/唐伟捷/电力/电力系统总文件夹/舟山电力"
xtype="xlsx"
typedata = []
name = []
raw_data=[]
file_path=[]
def collect_xls(list_collect,type1):
#取得列表中所有的type文件
for each_element in list_collect:
if isinstance(each_element,list):
collect_xls(each_element,type1)
elif each_element.endswith(type1):
typedata.insert(0,each_element)
return typedata
#读取所有文件夹中的xls文件
def read_xls(path,type2):
#遍历路径文件夹
for file in os.walk(path):
for each_list in file[2]:
file_path=file[0]+"/"+each_list
#os.walk()函数返回三个参数:路径,子文件夹,路径下的文件,利用字符串拼接file[0]和file[2]得到文件的路径
name.insert(0,file_path)
all_xls = collect_xls(name, type2)
#遍历所有type文件路径并读取数据
for evey_name in all_xls:
xls_data = xlrd.open_workbook(evey_name)
for each_sheet in xls_data.sheets():
sheet_data=test_wy.excel_table_byname(evey_name,0,each_sheet.name)
#请参考读取excel文件的代码
raw_data.insert(0, sheet_data)
print(each_sheet.name,":Data has been done.")
return raw_data
a=read_xls(xpath,xtype)
print("Victory")
欢迎各种不一样的想法~~

os.listdir() 得到路径下所有文件名构成的列表(在这里就是你的所有excel)
然后循环 读取excel文件就行了
读取和取第一列的数值都可以使用pandas 库,
df = pd.read_excel()
取第一列的数值构成list
list( df.iloc[:,0].values )


python如何将一个全部为int的列表,转化为全部为str的列表
解决方法一:a = [1,2,3,4,5]b = [ str(i) for i in a ]直接用List Comprehension来把每个元素转换成str。解决方法二:>>> L = [1,2,3,4,5]>>> map(str, L)['1', '2', '3', '4', '5']

python 如何将一个文件夹里面的文件重新命名并复制到另外一个文件夹下...
import shutilshutil.copy("oldfile","newfile")用这个代码,把文件名对应改下就可以了

python如何将一个全部为int的元组,转化为全部为str的元组
我自己试验了一下,这样做就可以了 >>> a=(1,2,3,4,5)>>> map(lambda x: str(x),a)['1', '2', '3', '4', '5']>>> tuple(map(lambda x: str(x),a))('1', '2', '3', '4', '5')

python如何将列表写入文件
Python将列表写入文件的操作步骤如下:1. 打开文件以供写入。2. 使用循环遍历列表中的每个元素,并将其写入文件。3. 关闭文件。以下是具体的操作步骤和代码示例:代码示例:假设我们有一个列表`my_list`,我们想将其写入一个名为`output.txt`的文件中。python my_list = ["apple", "banana", "...

如何用python输入一个整数获取该整数的位数。
python输入一个整数求其位数如下:方法一:Python可以通过将整数转换成字符串,然后查询字符串的长度来获取一个整数的位数。例如,我们可以使用input函数来获取用户输入的整数,然后将其转换为字符串,并使用len函数获取它的长度,最后输出即可。代码如下:num=int(input("请输入一个整数:"))num_len=len(...

python 如何将一个文件夹里面的文件重新命名
import shutilimport ospath1 = r''path2 = r''path1_ls = os.listdir(path1)path2_ls = []for i in range(len(path1_ls)): path1_ls[i] = os.path.join(path1, path1_ls[i]) path2_la.append(os.path.join(path2,paht1_ls[i].replace("_out","")))for i in ...

Python如何将一个列表写入到一个excel表中的一列,求Python代码,谢...
import xlwtf = xlwt.Workbook() #创建工作簿sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheetl_=[1,2,3,4,5]for i in range(len(l_)): sheet1.write(0,i,i)#表格的第一行开始写。第一列,第二列。。。 #sheet1.write(0,0,start_date,set_style('Tim...

python 中如何将一个字符反转
name = "Hello there, my name is Daniel Fu and I`m 33 years old."print(name[4]) # 字母o(hello的最后一个字母),从左至右第5个字母(因为index是从0开始)print(name[-3]) # 字母l(old中的l),index为负数表示从右至左第三个字母(-0和0没有区别,因此负index是从-1开始的...

python 如何将一系列数字十个一行输出
这里使用range方法快速生成10-90的数字添加进list列表 results = list(range(10, 90))n = 10 # 每10个数换一行 for i in range(len(results)):print(results[i], end=' ')if (i+1) % 10 == 0:print("\\n") # \\n为转义符 换行的意思#out:拓展内容python list列表 序列是...

python如何将一个文件夹下的所有excel读取,并每一个文件的第一列存为...
os.listdir() 得到路径下所有文件名构成的列表(在这里就是你的所有excel)然后循环 读取excel文件就行了 读取和取第一列的数值都可以使用pandas 库,df = pd.read_excel()取第一列的数值构成list list( df.iloc[:,0].values )

武威市15547161526: python把一个文件夹下的所有东西复制到另一个文件夹下 -
说咬恒雪: 可以直接通过pycharm来修改import的路径,具体pycharm版本不一样,对应按钮位置不一样,因此仅以文字说明. file->settings(ctrl+shift+s)->project setting->project interpreter->选择本机的python版本->interpreter path->添加. 如果在tests下有文件夹test2,其下有文件c.py.要引用c文件的c2 在你的main.py里面加入: from test2.c import c2 路径是以添加的路径的相对路径.

武威市15547161526: python里怎么列出一个文件夹下面的所有文件夹和文件 -
说咬恒雪: 先import os 然后用files=os.listdir(path)即可得到一个文件夹path下面的所有文件夹和文件

武威市15547161526: 用python把文件夹下的所有文件包括文件夹里面的文件都拷贝到同一个目录下 -
说咬恒雪: 123456789101112 defchange(path, path1): forf inos.listdir(path): ifos.path.isfile(path +os.path.sep +f): a, b =os.path.splitext(f) ifb !='.py': shutil.copy(path +os.sep +f, path1) elifos.path.isdir(path +os.path.sep +f): change(path +os.sep +f, path1) if__...

武威市15547161526: python怎么移动一个文件夹下的文件到文件夹中 -
说咬恒雪: 以前有过类似的问题 可以参考:http://blog.csdn.net/u012319493/article/details/75913001

武威市15547161526: 如何用python遍历文件夹下的所有excel文件 -
说咬恒雪: 大数据处理经常要用到一堆表格,然后需要把数据导入一个list中进行各种算法分析,简单讲一下自己的做法:1.如何读取excel文件 网上的版本很多,在xlrd模块基础上,找到一些源码: [python] view plain copyimport xdrlib ,sysimport xlrddef ...

武威市15547161526: Python中如何遍历指定目录下的所有文件? -
说咬恒雪: 例如:在C:\TDDOWNLOAD目录下有a.txt、b.txt两个文件,另有\sub1子文件夹,C:\TDDOWNLOAD\sub1下又有c.txt、d.txt两个文件.1. os.walk os.walk()返回一个三元素的tuple:当前路径、子文件夹名称、文件列表. >>> import os >>> def ...

武威市15547161526: python怎么删除文件夹以及里面的所有文件 -
说咬恒雪: os包的rmdir()函数可以用来删除一个文件夹,但是文件夹必须是空的.一种可行的方法是读取文件夹的文件列表,逐个删除文件夹中的所有文件,然而文件夹中可能还有文件夹,因此这是一个递归的操作.shutil包rmtree()函数就实现了以上功能.shutil是一个高级文件操作的包,实现了文件及文件集合复制与删除的功能.rmtree()函数接收非空文件夹的路径这唯一一个参数.示例代码如下:import shutil path = 'g:\zhidao' shutil.rmtree(path)

武威市15547161526: python或者bat怎么遍历文件夹下所有文件和文件夹然后修改后缀? -
说咬恒雪: 先遍历所有文件:from os import walkf = [] for (dirpath, dirnames, filenames) in walk(mypath):f.extend(filenames)break

武威市15547161526: Python如何将一个目录下所有文件夹里的.txt文件单独压缩 -
说咬恒雪: 这个用得着python吗?shell就能做到了(cd some_path && find . -name *.txt | cpio -o -H newc > ../ pack) 最多在python里用os.system调上面的命令.

武威市15547161526: python 怎么复制文件夹下部分文件 -
说咬恒雪: 1、可以配置无密码访问或者用sshpass在shell中存密码 2、实例 ip.txt包含ip列表,每行一个ip test.sh保护修改配置的命令或者直接修改好,复制到远程指定路径. 3、代码 #!/bin/sh for ip in `cat ip.txt`; do echo ${ip}; scp -P22 test.sh root...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网