2012-11-15 4 views
0

다음 코드를 사용하여 파일 목록을 가져 와서 각 항목 사이에 줄 바꿈이있는 목록을 반환합니다. 내가하려는 것은 각 항목에 체크 박스를 추가하는 것이지만, string.join은 2 개의 인수 만 허용합니다. 나는 각각의 라인은 체크 박스뿐만 아니라 줄 바꿈을 가질 수 있도록 파일 내 목록을 포맷에 대해 이동하는 방법을Jinja2에서 줄 바꿈 및 확인란으로 목록 서식 지정

listfiles = os.listdir('my_path') 
col_list = string.join('<input type="checkbox" />', listfiles, '</br>') 

:

이 그 오류 TypeError: join() takes at most 2 arguments (3 given)를 생성 시도했습니다 무엇? 감사!

+0

또 다른 제목을 고려하시기 바랍니다 -이 정말 당신이하려는 방법으로 할 당신이 뭘 하려는지과 거의 등이있다 그것. – Iguananaut

답변

1

이것은 오류 메시지를 읽는 교훈입니다. 어떤 것들은 비밀스럽고 후속 조치하기가 어렵습니다. 이 것은 매우 명확합니다. 함수를 세 개만 전달하면 함수는 두 개뿐입니다. Python Documentation에있는 표준 라이브러리 함수 및 메서드에 대한 설명서를 확인하거나 모든 개체에 help() 함수를 사용하여 명령 프롬프트에서 확인할 수 있습니다. 예 : help(string.join).

그러나이 용도로는 string 모듈을 사용하지 마십시오. 사용법은 더 이상 사용되지 않습니다. 문자열에는 .join() 메서드가 내장되어 있습니다.

당신은

찾고있는
col_list = '<br />'.join('<input type="checkbox" name="..." />%s' % filename 
         for filename in listfiles) 
+0

위대한 일을했습니다, 감사합니다! –