본문 바로가기
Computer & Program/python

[python] for & while & print

by TDRemon 2024. 3. 16.
반응형

안녕하세요. TDR입니다.

오늘은 반복문인 for문과 while문, 그리고 출력을 위한 print 메소드에 대해서  간략히 정리해 보겠습니다.

먼저 반복문인 for문과 while문을 먼저 보겠습니다. python에서는 다른 언어에는 없는 재밌는 기능이 있습니다. 바로 반복문 마지막에 else를 써서 반복문이 끝나고 나갈 때 한번 실행되는 구문입니다.

some_list = ['apple', 'banana', 'orange']

for item in some_list:
  print(item)
else:
  print('print all fruits')
  
## Result ##
apple
banana
orange
print all fruits

flag = True
while flag:
  if count >= 3:
    flag = False
  else:
    print(f'count : {count}')
  count += 1
else:
  print('done!')
  
## Result ##
count : 0
count : 1
count : 2
done!

위와 같이 for문과 while문 모두 쓸 수 있습니다.

그리고 for문에서 collection에서 값을 꺼내와서 쓰는게 아닌, 단순히 특정 횟수 만큼 반복을 하고 싶을 경우 관례적으로 아래와 같이 for문을 씁니다.

count = 0
for _ in range(3):
  print(f'count : {count}')
  count += 1
else:
  print('done')
  
## Result ##
count : 0
count : 1
count : 2
done

위와 같이 _ 를 이용해서 해당 반복문은 오직 반복에만 의미가 있다는 것을 뜻합니다. 물론 _ 에는 0~2까지 값이 순차적으로 들어오긴 합니다만, 만약 해당 값을 쓴다고 하면 의미가 있는 이름을 할당 하는 것을 추천 드립니다.

다음으로 print()의 재밌는 기능을 살펴보겠습니다.

count = 0
for _ in range(3):
  print(f'count : {count}', end=' / ')
  count += 1
  
print('another_print')

## Result ##
count : 0 / count : 1 / count : 2 / another_print

보다시피 end 값에 print 결과물의 마지막 값을 정의할 수 있습니다. 기본값은 new line(\n)이여서 생략할 경우 줄바꿈이 일어납니다. 위 기능을 이용하면 반복문을 통한 결과값을 한줄로 보고 싶거나, 특정 문자를 마지막에 넣고 싶은 경우 등 유용하게 쓸 수 있습니다. 하지만 이렇게 하면 마지막 출력 이후에도 줄바꿈이 안되서 다음 값도 반복문 출력 뒤에 붙는 현상이 생깁니다. 그럴때는 반복문의  else를 이용하면 아름답게 해결됩니다.

count = 0
for _ in range(3):
  print(f'count : {count}', end=' / ')
  count += 1
else:
  print('loop done')

print('another_print')

## Result ##
count : 0 / count : 1 / count : 2 / loop done
another_print
반응형

'Computer & Program > python' 카테고리의 다른 글

[python] Shell script 실행  (0) 2024.03.20
[python] String(문자열) 포함 여부 확인  (0) 2024.03.14
[python] Python 특징  (0) 2024.03.12
[python] Package & Module  (0) 2024.03.10
[python] Format(f-string)  (0) 2024.03.07

댓글