Tag: 字典

Openpyxl – 从字典写入excel的行和列

所以我试图做的是从字典中写入现有的Excel文件: wb = load_workbook(filename='test.xlsx') ws2 = wb.get_sheet_by_name("Blad3") tuple(ws2.iter_rows('A2:I1000')) for i in ws2.iter_rows('A2:I1000'): print str(row[0].value) for i in Candidates: row[0].value = i['Start Location'] row[1].value = i['Distance'] row[2].value = i['End Location'] for p in Potential_candidates: row[4].value = p['Start Location'] row[5].value = p['Distance'] row[6].value = p['End Location'] for n in No_coords: row[8].value = No_coords print 'Saving to file […]

使用脚本字典查找/突出显示在列A中使用Excel VBA跳过重复编号组

我试图使用Scripting Dictionary的方式,以便能够find并最终突出显示相同的值或在不一致的地方相同的值组(即在两个相同的值或相同的值组之间的空白或不同的值) 。 通常这些相同的值会重复,但是我试图抓住的是当他们不一起重复(见下面的示例图像从我以前的post)。 一些有希望的帮助会使这一点更有意义: 这是对我之前的一个问题的后续跟进。 我有一个条件格式公式: =NOT(AND(IFERROR(COUNTIF(OFFSET(A1,0,0,-COUNTIF($A$1:$A1,A2)),A2),0)=IFERROR(COUNTIF($A$1:$A1,A2),0),IFERROR(COUNTIF(OFFSET(A3,0,0,COUNTIF($A3:$A$5422,A2)),A2),0)=IFERROR(COUNTIF($A3:$A$5422,A2),0),A2<>"")) 这是完美的。 然而,在接受这个公式作为上一个问题的答案之后,我意识到使用任何types的条件格式来处理我通常处理的数据量(具有140个一致列的15000+行)是一个非常缓慢的尝试,当应用公式和事后过滤/调整时。 我也尝试通过“帮手列”路线应用这个公式,但毫不奇怪,这也是一样慢。 所以,我现在在哪里: 从本质上讲,我试图把这个公式转换成一段代码,但是更有效率,所以这就是我开始思考使用Scripting Dictionary作为加速我的代码执行时间的一种方式。 我列出了一些步骤,所以我知道我需要做什么。 但是,我觉得我错了,所以我在这里寻求帮助。 以下是我尝试使用Scripting Dictionary来完成列A(我的目标列)中突出显示的不一致以及我想要完成此任务所需的步骤: 'dump column A into Array '(Using Scripting.Dictionary) While cycling through check if duplicate 'IF duplicate check to make sure there is the same value either/or/both in the contiguous slot before/after the one being checked 'If not, then […]

c#:尝试将字典键和值注入到Excel文件中

我正试图将总结的值导出到excel文件中。 我可以很容易地用CSV文件做到这一点,但是用excel这样做对我来说很困难,因为我一次只能向单元格注入一个值。 我必须将其导出为xlsx扩展名。 我在这里要做的是将第一个参数设置为行号,将第二个参数设置为列号,将第三个参数设置为要注入的值。 int iColumn = 1; excel.WriteToSheet(int value of row, iColumn, key); excel.WriteToSheet(int value of row, iColumn + 1, iSumOpen); excel.WriteToSheet(int value of row, iColumn + 2, iSumBuy); excel.WriteToSheet(int value of row, iColumn + 3, iSumSell); excel.WriteToSheet(int value of row, iColumn + 4, iSumSettleMM); 这是整个方法。 我试图改变行值为key.count,使用for循环,并使其成为key.element(i),并没有运气find这样做的逻辑方式,部分原因是我对字典和方法没有经验的。 public void printToExcel(string vOutputPath) { string sExcelPath […]

Python(Excel,字典)如何写得更短

我写了一个太长的程序,我确信我可以写得更短。 这是一个从Excel导出值的函数: #"place" is a place where I have Excel file "book1.xlsx" place=os.path.join(DATA_DIR,'book1.xlsx') Excel=win32com.client.Dispatch('Excel.Application') wb=Excel.Workbooks.Open(place) sheet=wb.ActiveSheet #we are reading information from Excel # I have a table in Excel. This table has a name "Table' #TI3_value is a column in Table with name TI3 #TI3_value is a list, for example, [4.97, 3.02,1.02] TI3_value=[r[0].value for r […]

Dictionary use(MS Scripting Library)和其他一些方法,用于改善Excel中超过100,000行数据的Excel文件的执行时间

考虑一下你有一堆资产的场景,并且你有与每种资产相关的数字。 我们正在将这些数字从A集更改为B集,所以我正在编写一个脚本,以便根据原始集A的数量为Excel中的新列填充集B的某些值。 每套有11万件。 由于信息分散在很多表格中,我采用了VBA方法。 我的原始代码通过string的简单比较执行: Public Function SearchSAP(StkCd As Long) As Long Dim wb As Workbook Dim shSAP As Worksheet Dim i As Long ' SAP sheet name is fixed and does not change Set wb = ActiveWorkbook Set shSAP = wb.Worksheets("SAP") ' i is the start row of the SAP sheet for data i […]

读取excel svc并将结果列表转换为字典

我有几天的search,我怎么能做到这一点,我不能解决这个问题。 我看到了太多关于我会做什么的信息,但是我无法解决我的问题(对于我的不好的补充)。 我会从Excel中读取值,然后将其插入到字典中。 为了做到这一点,我从一个csv excel中读取,并将其插入到字典中,我读取行并将其插入到列表中,当所有列表都被放入字典中时,我就有了这个文件(excel): action key turn on TO001 turn off TO000 conect CO001 disconect DI000 plug PO001 unplug UP000 我的代码读取CSV文件是: def __call__(self, fileToRead): print("\n Now the output from a dictionary created from the csv file") try: with open(Read.ROUTE+fileToRead+Read.EXT, 'rt') as mycsvfile: dictioData = csv.DictReader(mycsvfile, dialect='excel') for row in dictioData: Read.list.append(row) print(row) except FileNotFoundError […]

使用OpenPyXL将Excel数据写入Python中的错误

对不起,打了一堆深奥的代码,但我遇到了一个错误,我不知道如何解决。 基本上,我想读取电子表格列中的单个单元格,并将其数据写入相应的字典(称为dataSet)。 我创build了一个function来做到这一点: def loopCol(col, start_offset, write_list): ''' Loop through 1 column (col) until it ends. Skip header by start_offset. Write data to list within DataSet dict ''' from openpyxl.utils import column_index_from_string # Create list and capture str of its name list_string = str(write_list) print(list_string) if list_string not in dataSet: raise KeyError('List name not within […]

结合两个列表形成一个字典

我已经从Excel表格的两列中提取了我需要的数据作为两个列表。 当我试图将这两个列表结合成一个字典时,最终的输出结果只有300个条目,而我的Excel表格有大约1200个条目。 为什么不是所有的条目都存储在字典中? 这是我的代码: import xlrd xl_workbook = xlrd.open_workbook("my_doc.xls") sheet1 = xl_workbook.sheet_by_index(0) list1 = sheet1.col_values(2) list2 = sheet1.col_values(3) data = dict(zip(list1, list2)) 我尝试打印list1,list2和数据的长度进行交叉检查。

使用csv python行和列

嘿,我试图创build一个字典,通过使用python中的内置模块csv。 本质上它是一个名为weather.csv的excel文件,其中行字典中的键是列标题,值是该行的值。 我被卡住了,因为我不能让代码运行多列来同时生成两个字典。 此外,我得到一个关键的错误,它说打印行['col_list'],我不明白为什么发生。 col_list是每一行的标题。 这是我迄今为止的代码: import csv def read_file(filename, col_list): filename = 'weather.csv' with open('weather.csv', 'r') as f: reader = csv.DictReader(f) for row in reader: print row['col_list'] 这是我希望我的输出是。 我觉得这很简单,但是我很难搞清楚。 print read_file('weather.csv', ['TemperatureF', 'VisibilityMPH']) {'TemperatureF': [30.9, 32.0, 32.0, 32.0, 32.0, 30.9 …], 'VisibilityMPH': [10.0, 10.0, 10.0, 10.0, 4.0, 2.5 …]}

使用openpyxl创build一个字典,其中key将成为excel表格中的header_name

from openpyxl import * Variable_Model_Path=defaultdict(list) Sheet_Name=wb.get_sheet_by_name(Sheet) for row in Sheet_Name.iter_rows(): Row=[cell.value for cell in row] for cell_ind,cell in enumerate(Row): print cell 以上是我的示例代码。 我有一个Excel表格,其中包含标题var1,var2,var3。 我想创build一个字典{Var1:1,4,7,10},其中Var1将是头名称,值将是相应的列值。 我正在使用openpyxl module.Herevariables的名称和值将由用户给出,他们将是dynamic的。 Var1 Var2 Var3 1 2 3 4 5 6 7 8 9 10 11 12