2012-04-10 4 views
0

에 두 개의 라인을 통해 큰 변수 이름과 코드를 분리, 내 코드가 비슷한입니다.내가 두 줄에 걸쳐 파이썬 코드를 분할 할 파이썬

도와주세요. 감사.

+0

더 작은 변수를 사용하지 않는 이유는 무엇입니까? – Makoto

+0

http://stackoverflow.com/questions/53162/how-can-i-do-a-line-break-line-continuation-in-python –

+0

@JoshBleecherSnyder : 이미 살펴 봤습니다. 그건 도움이 안돼. – riship89

답변

1

당신은 줄 바꿈 연속 문자, \를 사용할 수있는 당신이 당신의 라인을 쓸 수 있다는 것을 의미합니다.

if long_named_three_d_array[first_dimension] \ 
    [second_dimension]\ 
    [third_dimension] == somevalue: 
# Rest of code here, obviously properly indented in for the if. 
+0

고마워, 비슷한, somehting 찾고 있는데 그것은 나를 위해 작동하지 않습니다. 다시 확인해 주시겠습니까? – riship89

+2

@ hrishikeshp19 \ 문자 뒤에 공백 문자가 없는지 확인하십시오. –

+3

"후행 슬래시"행의 연속은 @MichaelAnderson이 지적한대로 1) 슬래시 뒤에 공백이 있으면 슬래시가 깨어지기 때문에 2) 모든 ** 주석 **이 나옵니다. 이것이 파이썬 스타일 가이드 (PEP 8)가 라인 연속을 위해 백 슬래시 구문을 사용하지 말 것을 권장하는 이유입니다. –

5

파이썬에서는 LHS를 대괄호로 묶을 수 있습니다.

>>> a = {} 
>>> a[1] = {} 
>>> a[1][2] = {} 
>>> (a[1][2] 
... [3]) = '' 
>>> a 
{1: {2: {3: ''}}} 
>>> (b) = 2 
>>> b 
2 

if (long_named_three_d_array[first_dimension] 
    [second_dimension] 
    [third_dimension]) == somevalue: 
# Rest of code here, obviously properly indented in for the if. 
1

한 가지 방법은 임시 변수를 사용하는 것입니다 :

tmp = long_named_three_d_array[first_dimension][second_dimension][third_dimension] 
if tmp == somevalue: 
    //dosomething 

이 가능하다면 짧은, 아직 설명 변수 식별자가 더 나은 선택이 될 것입니다하지만.