2013-08-16 3 views
7

이것은 내 현재 프로젝트에서 내 마음을 괴롭 히고있다. 내가 XLWT를 사용하여 엑셀 시트에 스타일을 쓰기 위해 노력하고있어, 아래 참조 :XLWT 여러 스타일

sheet.write(rowi,coli,value,stylesheet.bold,stylesheet.bordered) 

을 나는이 오류로 실행 해요 :

TypeError: write() takes at most 5 arguments (6 given)

방법 여러 스타일을 추가하려면이 극복하는 어떤 생각 특정 세포에? 여기서 목록을 작성할 수 있습니까?

답변

14

당신은 예를 들어, write 방법 만 행 번호, COL 번호, 가치와 스타일 (XFStyle 클래스 인스턴스)를 통과해야합니다

import xlwt 

workbook = xlwt.Workbook() 
worksheet = workbook.add_sheet('Test') 

style = xlwt.XFStyle() 

# font 
font = xlwt.Font() 
font.bold = True 
style.font = font 

# borders 
borders = xlwt.Borders() 
borders.bottom = xlwt.Borders.DASHED 
style.borders = borders 

worksheet.write(0, 0, 'test value', style=style) 
workbook.save('test.xls') 

같은 일 만을 easyxf를 사용하여 :

import xlwt 

workbook = xlwt.Workbook() 
worksheet = workbook.add_sheet('Test') 

style_string = "font: bold on; borders: bottom dashed" 
style = xlwt.easyxf(style_string) 

worksheet.write(0, 0, 'test value', style=style) 
workbook.save('test.xls') 
+0

아, 그래. 말이된다. 나는 이전에 이런 식으로 일을하고 있었지만 부피가 커 보인다. 나는 xlwt.easyxf에 대해 알아 냈고 그걸로 쉬운 방법이 될 것이라고 생각했습니다. 맞춰봐도) : –

+0

'easyxf '도 사용할 수 있습니다. 기본적으로 문자열에서 xlwt 스타일을 초기화하는 방법입니다. 원하는 경우 예제를 제공 할 수 있습니다. – alecxe

+0

예. 나는 짐이되는 것을 의미하지는 않지만, 실제로 어떻게되는지 알아야합니다. –