반응형
매우 긴 쿼리가 있습니다. 파이썬에서 여러 줄로 나누고 싶습니다. 자바 스크립트에서이를 수행하는 방법은 여러 문장을 사용하고 +
연산자로 결합하는 것입니다. 이 단계에서는 코드 가독성). 예:
var long_string = 'some text not important. just garbage to' +
'illustrate my example';
Python에서 비슷한 작업을 시도했지만 작동하지 않았으므로 \
를 사용하여 긴 문자열을 분할했습니다. 그러나 이것이 유일하고 / 최고 / pythonic 한 방법인지 확실하지 않습니다. 어색해 보인다.
실제 코드 :
query = 'SELECT action.descr as "action", ' 'role.id as role_id,' 'role.descr as role' 'FROM ' 'public.role_action_def,' 'public.role,' 'public.record_def, ' 'public.action' 'WHERE role.id = role_action_def.role_id AND' 'record_def.id = role_action_def.def_id AND' 'action.id = role_action_def.action_id AND' 'role_action_def.account_id = ' + account_id + ' AND' 'record_def.account_id=' + account_id + ' AND' 'def_id=' + def_id
해결 방법
여러 줄 문자열에 대해 이야기하고 있습니까? 쉽게 시작하고 끝낼 때 세 개의 따옴표를 사용하십시오.
s = """ this is a very
long string if I had the
energy to type more and more ..."""
작은 따옴표도 사용할 수 있으며 (물론 시작과 끝에 3 개) 결과 문자열 s
를 다른 문자열과 마찬가지로 처리 할 수 있습니다.
참고 : 모든 문자열과 마찬가지로 시작 및 끝 따옴표 사이에있는 모든 항목이 문자열의 일부가되므로이 예에는 선행 공백이 있습니다 (@ root45에서 지적 됨). 이 문자열은 또한 공백과 개행을 모두 포함합니다.
즉 :
' this is a very\n long string if I had the\n energy to type more and more ...'
마지막으로 다음과 같이 Python에서 긴 줄을 구성 할 수도 있습니다.
s = ("this is a very"
"long string too"
"for sure ..."
)
추가 공백이나 줄 바꿈을 포함하지 않습니다 (공백 건너 뛰기의 결과를 보여주는 의도적 인 예).
'this is a verylong string toofor sure ...'
쉼표가 필요하지 않습니다. 결합 할 문자열을 한 쌍의 괄호로 묶고 필요한 공백과 줄 바꿈을 고려하십시오.
참조 페이지 https://stackoverflow.com/questions/10660435
반응형
'파이썬' 카테고리의 다른 글
파이썬 ipython 노트북 --pylab 인라인 : 플롯 확대 / 축소 (0) | 2021.02.16 |
---|---|
파이썬 Python에서 COM / ActiveX로 무엇을 할 수 있습니까? (0) | 2021.02.16 |
파이썬 시간 문자열을 초로 변환하는 방법은 무엇입니까? (0) | 2021.02.16 |
파이썬 Python을 사용하여 iOS 및 Android 용 크로스 플랫폼 앱을 작성할 수 있습니까? (0) | 2021.02.16 |
파이썬 Django : 개발 및 프로덕션 설정을 관리하는 방법은 무엇입니까? (0) | 2021.02.16 |
댓글