🧐 🤔 그거 어떻게 쓰더라 🙄 😙

파이썬 코딩새

2022. 7. 31. Evergood Kim이가 씀
import this

전통적으로 프로그래밍 언어들에서는 단어를 구분할 때 말고는 띄어쓰기나 들여쓰기는 그냥 보기 좋은 꾸밈일 뿐이었는데; 파이썬은 적절한 들여쓰기가 문법적으로 강제될 뿐 아니라 강제되지 않는 부분에서도 “이렇게 하시오” 하고 가이드를 내놓는다. 들여쓰기 개판 치는 놈들은 의자에 묶어놓고 한달동안 파이썬만 시켜야 한다. 아니 그래도 빈줄 개수 정도는 마음대로 하자고~~~~

기본적으로 한 줄당 한 문장

x = 1
y = x + 10
print(x)

세미콜론으로 한 줄에 여러 문장. 역슬래시로 여러 줄에 한 문장

한 줄에 여러 문장을 적을 때는 문장 구분할 때 세미콜론을 쓴다.

x = 1; print(x)

한 문장을 여러 줄에 걸칠 때는 역슬래시를 쓴다.

x = 'hello ' + \
    'world'

x = 'hello '\
  + 'world'

x = 'hello ' \
    'world'

x = 'hello \
world'

(), [], {}가 쓰이는 표현은 역슬래시 없이도 줄나눔 된다.

m = [
    [1, 2, 3],
    [4, 5, 6],
]

공백만으로 된 줄은 무시된다.

들여쓰기

복합문(if문, for문, 함수정의 등)에서 그 문장의 몸통부분끼리 같은 수준으로 들여쓴다. 들여쓰기 한 수준 당 띄어쓰기 네 개가 권장된다.

if x == 0:
    a = 1  # 띄어쓰기 네 개로 들여썼다.
    b = 2
    while blah:
      do_something(1)  # 띄어쓰기 네 개가 권장되지만
      do_something(2)  # 두 개로도 에러는 아니다.
    for q in l:
            do_something(1)  # 쟤들보다 더 많은 빈칸으로 들여썼으나
            do_something(2)  # 랑은 상관이 없다. 얘들끼리만 같으면 된다.

      # 빈 줄은 상관이 없다.

    c = 3     # 이전 수준과 같이 들여씀으로써 복합문 탈출
       c = 3  # 에러: 여기 들여쓰기가 추가될 이유가 없다.
  c = 3       # 에러: 현재 수준, 이전 수준 중 어느 것에도 맞지 않는 들여쓰기 수준

d = 4  # 위 if문 탈출

(), [], {}의 안에는 들여쓰기 무관하다.

m = [
    [1, 2, 3],    # 보기
    [4, 5, 6],    # 좋음
]

m = [
      [1, 2, 3],  # 개떡같으나
  [4, 5, 6],      # 에러는
        ]         # 아님

print(1,2,        # 개떡같으나
             3    # 에러는
 ,4,5)            # 아님

pass문

복합문에서 실행내용은 꼭 한 문장 이상 나와야 한다. 그런데 실행할 내용이 없을 때; pass라는 문장을 쓰면 문법오류는 일으키지 않으면서 아무 내용 아니 실행된다.

주석

#부터 줄 끝까지 주석이다.

x = 1    # x에 1이 대입된다.

단; 문자열 리터럴 안에 적는 #는 주석이 아니다.

x = '#'  # x에 문자열 '#'이 대입된다.

여러줄 주석은 따로 없고 그냥 줄마다 다 # 붙여야 된다.

  • 파이썬 소스 파일들은 UTF-8으로 인코딩하는 게 기본이다. 오; 파이썬 재단! 당신들은 그 ㅈ같은 인코딩 문제 해결에 앞장서시는군요. 아주 좋소!
728x90