Python에서 줄 바꿈(줄 계속)을 하려면 어떻게 해야 하나요?

여러 줄로 나누고 싶은 긴 코드 줄이 있습니다. 무엇을 사용하고 어떤 구문을 사용해야 하나요?

예를 들어 문자열을 여러 개 추가하는 경우입니다,

e = 'a' + 'b' + 'c' + 'd'

와 같이 두 줄로 구성할 수 있습니다:

e = 'a' + 'b' +
    'c' + 'd'
해결책

줄은 무엇인가요? 다음 줄에 문제없이 인수를 사용할 수 있습니다:

a = dostuff(blahblah1, blahblah2, blahblah3, blahblah4, blahblah5, 
            blahblah6, blahblah7)

그렇지 않으면 다음과 같이 할 수 있습니다:

if a == True and \
   b == False

자세한 내용은 스타일 가이드를 참조하세요.

예시 줄에서 가져옵니다:

a = '1' + '2' + '3' + \
    '4' + '5'

또는:

a = ('1' + '2' + '3' +
    '4' + '5')

스타일 가이드에 따르면 괄호를 사용한 암시적 연속을 사용하는 것이 바람직하지만, 이 특별한 경우에는 표현식 주위에 괄호를 추가하는 것이 잘못된 방법일 수 있습니다.

해설 (16)
  • [PEP 파이썬 코드를 8bpc 스타일입니까 안내] 에서 1 *:

&gt. # 39 의 기본 방법을 사용하는 것이 Python& 랩할 긴 줄을 선 연결, 브래킷에 괄호 안에 있는 여러 번의 긴 줄을 선 및 braces. 감싸 괄호 안에 표현식에서는 나눌 수 있습니다. 이러한 사용해야 하는 대신 사용하는 백슬래시 선 연결.

&gt. 백 슬래시 적절한 시간에 있을 수 있습니다. 예를 들어, 오래 사용할 수 없는 여러 함께 명령문입니다. 암시적입니다 연속 도왔으매 백 슬래시 사용할 수 있습니다.

&gt. 열린 마음으로 (& # 39, /path/to/some/file/you/want/to/read& # 39;) tpc. file_1,\ 오픈 (& # 39, & # 39 w& # 39 /path/to/some/file/being/written& # 39;;;;) file_2 있다. file_2.write (file_1.read ())

&gt. 함께 다시 같은 비유하사 어설션 명령문입니다.

&gt. Smartupdate 들여쓰려면 줄 수가 있다. 는 이진 연산자입니다 분할하려면 수립하였습니다 기본 배치하십시오 후 아닌 연산자에서 전에. 예를 들면 다음과 같습니다.

&gt. 클래스 사각형에는 (물방울): &gt. 데프 init (자체, 너비, 높이 color = & # 39 black& 강조 = 0 = 없음,, # 39 강조표시할): if (= 0 = 0 이고, 높이 너버

39, & # 39, red& color = # 39, & # 39, strong& 및 강조 = 또는

강조표시할 &gt. 100): 높이는 바루어로 (&quot, 미안, 넌 lose") width = 0 = 0 이고, 높이 경우 (color = & # 39 red& # 39;; 또는 이후 없음 (none): 높이는 바루어로 (&quot, I don& # 39, 그래서 - 값은 %s, %s&quot 것 같지는 않다. % (width, height)) Blob.init (자체, 너비, 높이 색상, 강조, 강조표시할)

지금 pep8 반대 규칙을 사용하는 것이 좋습니다 수학자 · 공공업체 가독성을 높이기 위해 그들의 (중단에 대해 dell. 이진 작업).

, # 39 의 스타일을 끊기 전에 도널드 Knuth& 종합유선방송사업자 (so) 의 바이너리 작동자 정렬되고 세로일 있으므로 이 eye& # 39 의 워크로드에 항목에서와 결정할 때 추가되고 빼서.

From [PEP8: 줄 바꿈을 합니다 전 또는 후에 이진 작동자 가능] [2]:

&gt. 도널드 커누스 그의 통치에 대해 기존의 컴퓨터 및 조판 시리즈: 이진 운영 및 관계, 후에 단락 안에서 항상 &quot 좋지만 공식을 분할합니다 전에 항상 시됩니다 공식을 분할합니다 이진 operations&quot. [3].

&gt. 일반적으로 다음 전통인건지 에서 수학 결과적으로 보다 판독값 코드:

&gt. # 예: 일치시키려면 연산자로 피연산자로 손쉰운 = (gross_wages 소득

  • taxable_interest
  • (배당 - qualified_dividends)
  • ira_deduction student_loan_interest)

&gt. 파이썬 코드를 있는 것이며, 이는 분할하려면 전이나 후에, 이진 연산자입니다 deltamove 컨벤션 일관성입니까 로칼에서. # 39, 새로운 코드를 Knuth& 의 스타일을 제시하고 있다.

[2]: http://legacy.python.org/dev/peps/pep-0008/ # 전 또는 후에 이진 연산자입니다 줄 바꿈을 합니다. [3]: # 39, s The 테스부크 195, 196 도널드 Knuth& 페이지 및

해설 (5)

이 경우 백슬래시 끝까지 사용하는 것은 위험한 선 후 추가한 공백은 백슬래시 (물론, 이는 매우 어려운 참조) 백슬래시 더 이상 뭐하는 줄 알았다.

파이썬 및 안티 매우 지켜보리니 관용구 (장치당 [파이썬 2] (https://docs.python.org/2/howto/doanddont.html # 계속 사용하여 제표를 백슬래시) 또는 [파이썬 3] (https://docs.python.org/3.1/howto/doanddont.html # 계속 사용하여 제표를 백슬래시) 보다.

해설 (1)

그 사이, 중괄호 파레나시스 흐름선 끊을 수 있습니다. 또한 이 \' 한 줄로 덮어쓰기/추가 백슬래시 문자 '를 명시적으로 break it.

x = (tuples_first_value,
     second_value)
y = 1 + \
    2
해설 (0)

줄 끝에 \를 넣거나 문을 괄호 '( .. )`로 묶습니다. 에서 IBM:

b = ((i1 < 20) and
     (i2 < 30) and
     (i3 < 40))

또는

b = (i1 < 20) and \
    (i2 < 30) and \
    (i3 < 40)
해설 (0)

말의 입에서 나온 말: [명시적 대사

합류][1]

두 개 이상의 물리적 줄은 다음과 같을 수 있습니다. 다음을 사용하여 논리적 줄로 결합합니다. 백슬래시 문자 (\)를 사용하여 다음과 같이 연결할 수 있습니다: 물리적 줄이 끝날 때 문자열의 일부가 아닌 백슬래시 리터럴 또는 주석, 다음과 결합됩니다. 다음은 단일 논리를 형성합니다. 줄, 백슬래시를 삭제하고 줄 끝 문자를 삭제합니다. For 예시:

1900이 연도이고 2100이 월이고 1이 월이고 12가 되면 1

해설 (1)

그렇지 않을 수 있지만, 주로 사용하고 있는 함수를 파이썬 운행에서어떠한 내가 오래 같이 바뀌엇어요 참가하십시오 쓰기 위해 SQL 쿼리 문자열.

query = " ".join([
    'SELECT * FROM "TableName"',
    'WHERE "SomeColumn1"=VALUE',
    'ORDER BY "SomeColumn2"',
    'LIMIT 5;'
])
해설 (0)

39 의 Hitchhiker& 가져옴 안내선 파이썬 ([행 계속] [1]).

&gt. 이 코드는 논리 줄 때, 그 위에 선 이상 수락됨 제한값 분할하려면 여러 물리적 합니다. 파이썬 인터프리터 흐름선 fileuri 의 마지막 문자가 선 () 는 백슬래시 연속적입니다 합류할 예정이다. 이는 경우도 있지만, 일반적으로 도움됐네 입히지 상태였기 때문에 피해야 한다. the end of the line 추가되도록 공백 후 예상치 못한 결과가 발생할 수 있는 코드를 백슬래시 끊어집니다.

&gt. 더 좋은 해결책은 바로 사용할 수 있는 이 괄호가 괄호로 묶인 너회의 elements. 열려 있는 왼쪽 협력하였습니다 행 끝 다음 줄로 종료되었는지 때까지 괄호 파이썬 인터프리터 합류할 예정이다. 이 같은 행동에 대해 갖고 굽은 및 각괄호.

&gt. , 하지만 대개의 경우 이 긴 줄은 분할하려면 로털 예중이 시도 중인 너무 많은 일들이 동시에 할 수 있는 가독성을 사탄들이.

즉, 예를 들어 여러 임포트합니다 here& # 39 에 있을 때 (when 충족시켰습니다 [line 에 정의된 한도량 pep 8] [2]) 는 일반적으로 적용되는 문장열.

from app import (
    app, abort, make_response, redirect, render_template, request, session
)

[1]: https://docs.python-guide.org/writing/style/ # 선 연속 요청 [2]: https://www.python.org/dev/peps/pep-0008/ # 최대 선 길이

해설 (0)