Tag: python

Pyexcel不操纵我告诉它的细胞

我正在使用pyexcel来自动打开一个excel表格,处理一些数据并再次保存。 然而,它只能操纵第一个命令,似乎忽略了其他命令。 我访问我的文件, book = pyexcel.get_book(file_name=file_to_be_manipulated) 而file_to_be_manipulated则保存到文件的链接 那么我有我的工作表像一个元组 sheets = ('first_sheet', 'second_sheet', etc.) 并通过它们访问它们 sheet_name = book[sheets[sheet_index]] 遍历我想要操作的单元格我访问单元格 这里一切正常,我只要遍历第二列,然后'删除'前两列中的所有内容。 这工作得很好。 row = 5 column = 2 column_to_be_deleted = 0 second_column_to_be_deleted = 1 sheet_name = book[sheets[sheet_index]] while sheet_name[row,column] != None: row_to_be_deleted = row second_row_to_be_deleted = row sheet_name[row_to_be_deleted, column_to_be_deleted] = "" sheet_name[second_row_to_be_deleted, second_column_to_be_deleted] = "" row += […]

在一个列中插入多个值以实现卓越

如何在excel列中插入所有使用xlsxwriter库的for循环中的值?因为现在这里是我的脚本循环中的输出: Value : 4.0 Value : 17.2 Value : 7.0 excel列的结果就是 – >>>'Vaue:7.0' 这是我的代码: for line, file in enumerate(PM2Line): if POA in file: count = count + 1 #print file worksheet.write('B2', file)#—here is my issue.. 我需要将它们全部插入到一列中,但现在只是更新哪个是最后一个返回值。

根据大pandas的date范围select过滤Excel数据

我想知道如何过滤基于特定date范围的Excel数据使用pandas通过python。 举个例子: (sheet1.xlsx)包含: DATE 51 52 53 54 55 56 20110706 28.52 27.52 26.52 25.52 24.52 23.52 20110707 28.97 27.97 26.97 25.97 24.97 23.97 20110708 28.52 27.52 26.52 25.52 24.52 23.52 20110709 28.97 27.97 26.97 25.97 24.97 23.97 20110710 30.5 29.5 28.5 27.5 26.5 25.5 20110711 32.93 31.93 30.93 29.93 28.93 27.93 20110712 35.54 34.54 […]

等待DataNitro完成VBA调用

我从VBA中调用一个python脚本,如下所示: Sub python_call() Application.COMAddIns("DataNitro.DataNitro").Object.RunScript ("test.py") 'do some other stuff End Sub test.py需要一段时间才能运行,所以我希望VBA在运行剩下的代码之前等待。 除了Application.Wait之外,有没有办法做到这一点?

将.txt转换为嵌套文件夹中的.xls

我find了一个Python脚本来将.txt转换为.xls,并且它正在工作: 将多个制表符分隔的.txt文件转换为多个.xls文件 : import glob import csv import xlwt import win32com.client as win32 for filename in glob.glob("C:\Users\MSI\Desktop\Python Lab\AGR\\*.txt"): spamReader = csv.reader((open(filename, 'rb')), delimiter='|',quotechar='"') encoding = 'latin1' wb = xlwt.Workbook(encoding=encoding) sheet=xlwt.Workbook() sheet = wb.add_sheet('sheet 1') newName = filename for rowx, row in enumerate(spamReader): for colx, value in enumerate(row): sheet.write(rowx, colx, value) wb.save(newName.replace('.txt','.xls')) print "Done" 但是,它只能转换文件path,但不能转换嵌套文件夹中的任何文件。 我如何修改它以包含嵌套的文件夹?

当满足条件语句时拉取特定的数据行

我正在尝试使用xlrd从一个大的电子表格中抽取特定的信息行(对于其他100多个电子表格)。 具体来说,我需要一个脚本,可以梳理电子表格的行,并拉出所有以特定string(例如, bike )开始的行。 也就是说,一旦脚本find以bike开始的行,我需要打印bike和旁边单元格中的值(这也恰好是整行)。 这是我迄今为止,但bike后,我一直得到一个语法错误: import xlrd workbook = xlrd.open_workbook('test.xlsx') worksheet = workbook.sheet_by_name('Sheet1') for row in range(worksheet.nrows): if worksheet.row_values(row) == 'bike' print worksheet.row_values(row) else: print 'Code not found'

循环一个文本文件和一个Excel文件

我想查看一个文件中是否包含(不等于)Excel文件中的列。 data = pd.read_excel('C:/Users…/excel.xlsx', sep='\t') f=open("list.txt", "r+") for line in f: line = line.rstrip() for vh in data["Column_of_interest"]: vh = vh.rstrip() match = line in vh print (match) break 结果应该是全部“真实的”,但它只给了我第一个“真”的。

请求:使用python 3下载一个excel文件(无效文字为int 16)

我是python的新手,我正在学习使用它来为我刮取一些数据,但由于某些原因,我无法下载excel文件,我不明白。 我想下载这个excel文件,当我在任何浏览器中打开这个链接时,它会尝试保存一个excel文件: http://www5.registraduria.gov.co/CuentasClarasPublicoCon2014/Consultas/Candidato/Formulario5xls/2 基于以前的问题(请参阅从网上下载python中的Excel文件 )我在python 3中使用请求,如下所示: import requests, os url="http://www5.registraduria.gov.co/CuentasClarasPublicoCon2014/Consultas/Candidato/Formulario5xls/2" print("Downloading…") requests.get(url) output = open('test.xls', 'wb') output.write(resp.content) output.close() print("Done!") 我认为这个问题不是在test.xls被创build之后写入数据的那部分代码,而是一个空文件。 requests.get给了我下面的错误(后面还有几个): Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/requests/packages/urllib3/response.py", line 417, in _update_chunk_length self.chunk_left = int(line, 16) ValueError: invalid literal for int() with base 16: b'' 我也尝试使用urllib,但仍然失败。

xlrd循环通过文件夹中的多个工作簿

我正在处理一个脚本,该脚本从一个文件夹中的多个Excel工作簿中提取某些数据行(关键工作表在每个工作簿中都有相同的名称)。 此代码似乎只处理/打印文件夹中第一个文件的结果: import os import xlrd for root, dirs, files in os.walk('/Users/123/Desktop/drivingtests'): xlsfiles=[ _ for _ in files if _.endswith('.xlsx') ] for xlsfile in xlsfiles: workbook = xlrd.open_workbook(os.path.join(root,xlsfile)) worksheet = workbook.sheet_by_name('Sheet1') for row in range(worksheet.nrows): workbook = xlrd.open_workbook(os.path.join(root,xlsfile)) worksheet = workbook.sheet_by_name('Sheet1') if worksheet.row_values(row)[0] == 'bike': print worksheet.row_values(row) 应该做些什么来让脚本处理文件夹中的每个工作簿?

通过MS Excel获取Excel行号

我有下面的代码,用于查找匹配单元格值并返回匹配单元格值的行,例如在单元格D57(第58行)上查找值为“LogiGear”,它将返回第58行。我想要改进代码,只查找D列。 我不知道为什么它返回错误“无效的类string”。 有什么build议? ''' get excell row number via MS ''' def GetExcellRowNumberViaMS(strFile, strSheet, text): try: bFound = False #Create an instance of Excel.Application xlApp = win32com.client.Dispatch("Excel.Application") lnRowNumber=0; i = 1 lastrow = xlSheet.UsedRange.Rows.Count lastcol = xlSheet.UsedRange.Columns.Count while(i<65000 and bFound ==False): if(i == lastrow+1): break j = 1 while(j<256): if(j == lastcol+1): break value = […]