Tag: python

效率:openpyxl还是VBA?

我试图找出一个类似的任务通常更快:使用VBA或openpyxl。 我知道这可能取决于你想要完成的任务,但是假设我有一个宽50格,高150,000格的桌子,我想把它从woorkbook A复制到工作簿B. 任何想法,如果python会做得更好,或者如果Excel更好地处理自己? 我的胆量告诉我,由于某些原因,Python应该相当快 : 为了让副本从工作簿复制到另一个, 都应该是开放和运行 ,而与python我可以简单地加载两个; VBA需要处理大量的任务,占用大量的系统资源 除此之外 ,我想知道是否可以对openpyxl脚本做进一步的改进,比如multithreading或者可能使用NumPy。 谢谢您的帮助!

Python将字典输出到excel文件

我有一个txt格式的字典 – 这是文件的一部分(它包含6000个键:值: {'YAL008W': 25, 'YBR255W': 50, 'YGR164W': 37, 'YGR131W': 40, 'YNL003C': 11, 'YBR135W': 2, 'YBR160W': 6, 'YJL082W': 79, 'YJL142C': 4, 'YPL191C': 38, 'YGL215W': 31, 'YKL074C': 33, 'YJL077C': 67, 'YKL096W-A': 22, 'YIL124W': 60, 'YLR364C-A': 2, 'YPL039W': 58, 'YNL170W': 16, 'YGL141W': 62, 'YJL179W': 15, 'YDR316W-A': 13, 'YDR316W-B': 139, 'YKL083W': 25, 'YOR009W': 25, 'YKL029C': 395, 'YPL166W': 31, […]

xlwt可以在包含标题和链接variables的单元格中创build一个超链接吗?

例如, 如何更改以下行,使“test”variables为T,“ http://google.com ”为variablesL? ws.write(0, 0, xlwt.Formula('"test " & HYPERLINK("http://google.com")'))

csv.writer将所有内容写入一个单元格

编辑 :解决感谢@ayhan。 如果您来自波兰,请使用分号而不是逗号作为分隔符。 我有一个列表如下所示: list = [['edytor poranka PN', '1/04/2016', '15:00'], ['edytor PN 2', '2/04/2016', '08:30'], ['edytor PN noc', '3/04/2016', '22:00']] csv.writer将每个列表写入一个单元格而不是3个单独的单元格。 我的代码如下所示: with open('file.csv', 'w') as f: writer = csv.writer(f, delimiter=',', quoting=csv.QUOTE_MINIMAL) writer.writerows(list) 我也试过这个方法: for i in list: writer.writerow(i) 而且这也行不通。 我的另一个问题是,每行被一个额外的空行分隔,我不知道如何摆脱它。 我知道有类似的问题,但没有解决scheme为我工作。

Python 3.5使用openpyxl编写numpy

我一直在努力通过Hilpisch的“Python for Finance”,并没有太多的麻烦,直到我写到Excel的章节。 我正在运行Python 3.5并使用OpenPyxl模块 import openpyxl as oxl import numpy as np wb = oxl.Workbook() ws = wb.create_sheet(index = 0, title = 'oxl_sheet') data = np.arange(1, 65).reshape((8, 8)) for c in range(1, data.shape[0]): for r in range(1, data.shape[1]): ws.cell(row=r, column=c, value=data[c, r]) 这将返回: ValueError: Cannot convert 10 to Excel 这是使用numpy的问题吗? 例如,下面的代码返回一个类似的错误。 ws.cell(row=1, column=1, value=data[0,0]) […]

将openpyxl数据传递给pandas

我从excel文件的数据中将“全名”字段拆分为“名字”,“中间名”和“姓氏”字段,我不知道如何在pandas中这样做,所以我转向了openpyxl。得到的variables分裂,因为我想要的。但是, 因为添加列到openpyxl的新领域是不容易的 ,我想我会传递给pandas的值。 我运行代码时生成了我需要的数据框,但是一旦将df发送到ExcelWriter,只有最后一行被添加到Excel文件中。 数据是在正确的地方,但。 代码如下: for cellObj in range(2, sheet.max_row+1): #print cellObj id = sheet['A' + str(cellObj)].value fullname = sheet['B' + str(cellObj)].value.strip() namelist = fullname.split(' ') for i in namelist: firstname = namelist[0] if len(namelist) == 2: lastname = namelist[1] middlename = '' elif len(namelist) == 3: middlename = namelist[1] lastname = namelist[2] elif […]

使用python错误信息将excel文件转换为csv

我正在使用PYTHON将excel(xlsx)文件转换为CSV,我收到以下错误消息。 代码:import xlrd import csv with xlrd.open_workbook('a_file.xlsx') as wb: sh = wb.sheet_by_index(0) # or wb.sheet_by_name('name_of_the_sheet_here') with open('a_file.csv', 'wb') as f: c = csv.writer(f) for r in range(sh.nrows): c.writerow(sh.row_values(r)) 在c.writerow(sh.row_values(r))中,第9行的文件“C:\ Python27 \ Scripts \ 1.py”UnicodeEncodeError:'ascii'编解码器无法编码字符u'\ xbd'在位置4:序号不在范围内(128) 任何解决错误的光?

Python从Excel文件中读取datestring

我有excel文件中的数据与列A作为date时间string和列B与数据。 我想读取Python中的excel文件并创build两个元素的字典。 第一个是date时间vector,第二个是数据。 Excel文件中的数据看起来如下所示: DateTime Marks 1/1/10 23:00 38.86 2/1/10 12:00 36.19 1/1/10 13:00 35.10 1/1/10 14:00 39.87 5/1/10 15:00 39.48 1/1/10 16:00 38.64 1/1/10 17:00 39.19 我写了以下片段开始: import xlrd import os.path wb = xlrd.open_workbook(os.path.join('C:\Users\JD\Documents\RandomNumber','DateTimeData.xlsx')) 但我不知道下一步该做什么?

如何在xlsx文件中获取当前行并将其分割为前一个?

我正在使用这个class来写入xlsx文件中的统计信息: class DictWriter: def __init__(self, workbook, worksheet, fieldnames): self.workbook = workbook self.worksheet = worksheet self.fieldnames = fieldnames self.nrow = 1 def writerow(self, d, condition=0): for k in d: ncol = self.fieldnames.index(k) self.worksheet.write(self.nrow, ncol, d[k]) self.nrow += 1 def writeheader(self): for ncol, fieldname in enumerate(self.fieldnames): self.worksheet.write(0, ncol, fieldname) 并以这种方式使用它: def file_generator(): link = "http://linkforexample.com/api/getSomething" client = […]

相当于Python或MYSQL中的Excel目标searchfunction

我将如何使用Python或MySQL实现Excel目标查找function? 这是场景: 在我工作的机构,他们购买物品,然后出售给在线商店,这个网上商店申请3个不同的费用,计算最终的价格。 该机构想要在最终价格上赚取固定的金额,所以我需要计算出他们想要赚取的费用和金额的最终价格。 我知道他们想赚取的金额和初始价格,以及费用,我不知道我需要卖什么样的价格来赚取这些特定的金额。 随着Excel中他们使用目标searchfunction,计算最终价格与所有的费用和代理商想要获得的固定金额,我想用python或mysql做到这一点。 EX: a1 = 270.0$ # This is the price they buy the item c2 = 3.50$ # This is the shipping Price c3 = 0.10 # This is the FEE of the store in percentage (10%) c4 = 0.03 # This is the FEE for the credit card (0.3%) […]