2017-12-08 17 views
1

を逃すことはつい最近のPython、私が持っているバージョンを使用して開始している私は、Excelシート上の単一の列にリストを書き込むようにopenpyxlを使用している3.5問題ExcelにPythonのリストを書いて、リスト項目は

あり、複雑すぎるものは、ここにコードされていない:

import openpyxl 
import random 

wb = openpyxl.load_workbook('testSave.xlsx') 
target_sheet = wb.get_sheet_by_name('Destination') 

##create a list with random numbers 
for i in range(1,20): 
    container.append(random.randint(1,20)) 

for j in container: 
    rowIn = container.index(i) 
    target_sheet.cell(row = rowIn + 1, column = 1).value = container[rowIn] 

wb.save('testSave.xlsx') 

私は、リスト項目のいくつかのワークブック、不足している合計10れを開くと、私は数日間、これについて研究して、間違ってやっているかわかりません今は運が無ければ、それはおそらく何かばかげている、どんな助けも大いに感謝されるだろう。

答えて

0

list.index()は、あなたが思っていることをしていません - リストにある要素の値の最初のインデックスを返します。リストに重複した要素を持つことができれば、繰り返される要素のインデックスは決して得られません。あなたがあなたのリストを列挙したい場合は、enumerate()を使用します。

import openpyxl 
import random 

wb = openpyxl.load_workbook('testSave.xlsx') 
target_sheet = wb.get_sheet_by_name('Destination') 

##create a list with random numbers 
for i in range(1,20): 
    container.append(random.randint(1,20)) 

for i, j in enumerate(container): 
    target_sheet.cell(row = i + 1, column = 1).value = j 

wb.save('testSave.xlsx') 
+0

あなたZwerに感謝、感謝、それは狂気私を運転していた不思議。 –

関連する問題