Program Language/Python

728x90
반응형

 

 

 


 

 

Summary

프로그래밍을 진행할때 가장 많이 사용하는 구문이 제어문과 반복문인데요. python에서 사용되는 반복문의 종류에는 for 문과 while 문이 있습니다. 

 

 

 

 

 반복문

반복문은 제어문중의 하나로, 프로그램 소스 코드내에서 특정한 부분의 코드가 반복적으로 수행 될 수 있도록 하는 구문입니다.
프로그램이 처리하는 대부분의 코드는 반복적인 형태가 많으므로, 가장 많이 사용되는 제어문 중 하나입니다.

Python 에서는 for 문과, while 문이 반복문에 해당이 됩니다. 

 

 

 

 

 

for 문

for문은 특정 값들의 집합의 대해 코드의 일부분을 반복하는 구문입니다. 

for 문의 기본적인 구문은 아래와 같습니다. 

for item in list of items:
	# do something

주로 list 자료형을 이용해서 for 문을 구현하며, 순차적인 리스트를 반환하는 range 함수와 같이 사용되기도 합니다. 

 

 

# 샘플
fruits = ["Apple", "Peach", "Pear"]
for fruit in fruits:
	print(fruit)


>>>
Apple
Peach
Pear

 

 

 

 

for 문과 자주 사용되는 range 함수

range(start, end, step) 함수는 start 와 end 사이의 연속적인 숫자들을 리턴하는 함수 이며, for 문과 자주 사용되는 함수 입니다. 유의사항은 end의 숫자는 포함되지 않은 숫자까지 리턴된다는 점입니다. 

 

range(start, end, step)

range의 syntax는 위와 같고 stop과 step은 생략 가능합니다.

  • start : start로 시작되는 숫자부터 리턴됩니다.
  • end : end가 포함되지 않는 숫자까지 리턴됩니다.
  • step : 연속적인 숫자들 중에, step의 간격에 해당되는 숫자들만 리턴됩니다.

 

 

for item in range(a, b):
	print(item)

for 문과 같이 사용할 경우, 위 예시처럼 사용가능하며, 자세한 예시는 아래 첨부 합니다.

 

 

 

# 1부터 10까지의 개념이며, 10을 포함하지 않음
for number in range(1,10):
	print(number)


total = 0
for number in range(1, 101):
    if number % 2 == 0:
        total += number

print(total)




total = 0
for number in range(2, 101, 2):
	total += number

print(total)

 

 

 

 

 

 while 문

조건이 참일 때마다, 들여쓰기 된 코드들을 실행하는 반복 실행문.

for문은 end 조건이 정해져 있지만, while loop 는 infinite loop 개념이라, 조건문에 유의 해야 합니다.

while someting_is_true:
	# do something

기본적은 구문은 위의 내용과 같으며, 아래는 이를 이용한 예시입니다. 

 

# 샘플
i = 0
while i < 100:
	print(f"i = {i}")
	i += 1


# 출력
i = 0
i = 1
...
i = 99

 

 

 

 

 

 

Reference

https://velog.io/@chappi/파이썬을-배워보자-9일차-반복문while-for

https://www.freecodecamp.org/korean/news/python-for-loop-for-i-in-range-example/

 

 

 

 

 

 

 

END


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
728x90
반응형

 

 

 

 


 

 

Summary

조건문은 모든 언어에서 가장 많이 사용하는 프로그래밍 구문중에 하나입니다. Python 에서 사용되는 조건문 형식에 대해서 간략하게 핵심만 정리해 보았습니다. 

 

 

 

 

 

 

## 조건문이란?

조건문이란 어떤 조건이 주어질 때 어떤 동작을 수행하도록 할지, 즉 조건에 따라 실행이 달라지게 할 때 사용되는 문장입니다.
Boolean 자료형 조건이 참인지, 혹은 거짓인지에 따라 달라지는 상황을 수행하는 명령문입니다.

 

 

 

 

 

## 조건문형식

 

if condition:
	do A
else:
	do B

if/else의 기본 조건문은 위 화면과 같습니다. 해당 조건문 옆에 : 콜론으로 타 언어의 { } 를 대체합니다. 

 

 

if condition1:
	do A
elif condition2:
	do B
else:
	do C

else if 의 조건문 형태는 elif 구문으로 사용합니다. 

 

 

 

 

 

## 조건문 유형 : 비교연산자
  • > : 왼쪽의 값이 클경우
  • < : 왼쪽의 값이 작을 경우
  • >= : 왼쪽의 값이 크거나 같을 경우
  • <= : 왼쪽의 값이 작거나 같을 경우
  • == : 두 값이 같을 경우
  • != : 두 값이 다를 경우
if 5 > 1:
	do A


if 5 < 1:
	do A


if 5 >= 1:
	do A


if 5 <= 1:
	do A


if 5 == 5:
	do A
    
    
if 5 != 1:
	do A

 

 

 

 

 

 

## 조건문 유형 : 논리연산자
  • and : 두가지 조건문 모두 참일 경우 True, 아니면 False
  • or : 두가지 조건문 중 하나라도 참일 경우 True, 아니면 False
  • not : 조건문이 거짓이면 True, 참이면 False
// 두 조건일 참일 경우
if condition1 and condition2:
	do A
else:
	do B


// 두가지 조건중 하나만 참일 경우
if condition1 or condition2:
	do A
else:
	do B


// 조건이 False 일 경우 do A
if not condition1:
	do A
else:
	do B

 

 

 

 

 

 

참조

 

 

 

 

 

 

 

 

 

END


 

 

 

 

 

 

 

 

 

 

 

 

728x90
728x90
반응형

 

 


 

들어가며

Python을 공부 하면서 그때마다의 내용을 정리하고, 복습해보려고 합니다. 전반적으로 내용을 정리해서 작성하는게 아니여서 중복된 내용이 작성될 수 있습니다. 참고해주세요.

 

 

 

 

 

 

input()

 

input("Age : ")

print("Age is " + input("Age : "))


//결과화면
Age : 16
Age : 16
Age is 16

파이썬에서 데이터에 대한 입력은 input() 메소드를 이용해서 진행합니다.

input 메소드에 문자열 형태의 prompt가 있는 경우, 줄바꿈 없이 화면에 출력됩니다. 그런 다음 입력에서 한 줄을 읽고 문자열로 변한 후 반환합니다. (자동적으로 줄바꿈 제거)

 

그렇기 때문에 input 으로 입력받은 데이터는 기본적으로 문자열 형태여서, 형 변환 후 이용해야 합니다. 

 

 

 

 

변수를 이용한 입력

 

위에 입력에 대한 부분은 input() 메소드에 대한 기본적인 내용이며, 변수를 이용해서 입력된 내용을 사용 할 수 있습니다.

name = input("Age : ")

print("Age is " + name)


// 출력
Age : 16
Age is 16

 

 

 

 

 

 

참조

https://docs.python.org/3/library/functions.html?highlight=input#input

 

 

 

 

 

END


 

 

 

 

728x90
728x90
반응형

 

 

 

 

 


 

들어가며

Python을 공부 하면서 그때마다의 내용을 정리하고, 복습해보려고 합니다. 전반적으로 내용을 정리해서 작성하는게 아니여서 중복된 내용이 작성될 수 있습니다. 참고해주세요.

 

 

 

 

 

print()

 

print ( * objects , sep = ' ' , end = '\n' , file = None , flush = False )

print 메소드는 위와 같은 인자를 가지고 있습니다. 

 

객체를 텍스트 스트림 파일 에 인쇄하며, sep 로 구분 하고 end 가 뒤에 옵니다.

sep , end , file 및 flush 는 키워드 인수로 제공되어야 합니다.

키워드가 아닌 모든 인수는 str()  같은 문자열로 변환되고 스트림에 기록되며 sep 로 구분되고 뒤에 end 가 옵니다.

sep 와 end는 모두 문자열이어야 합니다. None의 경우 기본 값의 사용을 의미합니다.

file 인수는 write(string) 메서드 가 있는 객체여야 합니다. None 또는 값을 제공하지 않는 경우 sys.stdout을 사용합니다.

인쇄된 인수는 텍스트 문자열로 변환되기 때문에 print()는 바이너리 모드 파일 객체와 함께 사용할 수 없습니다. 이를 위해 file.write(...)를 대신 사용하십시오.

출력이 버퍼링되는지 여부는 일반적으로 파일에 의해 결정되지만 flush 키워드 인수가 true이면 스트림이 강제로 플러시됩니다.

버전 3.3에서 변경: flush 키워드 인수를 추가했습니다 .

 

 

 

 

 

기본 print() 출력 샘플

 

print("Hello world")
print("My Name is \"Jeff\"")
print('My Name is "Jeff"')
print("My Name is 'Jeff'")
print("My Name is " + "Jeff")
print(1, 2, 3, 4, 5)
Hello world
My Name is "Jeff"
My Name is "Jeff"
My Name is 'Jeff'
My Name is Jeff
1 2 3 4 5

 

 

 

 

 

sep, end  인자값을 이용한 출력

 

 

print(1, 2, 3, 4, 5, sep=" : ", end=",")
1 : 2 : 3 : 4 : 5,

중간의 구분되는 문자열을 sep 인자로 설정 할 수 있으며, end 인자로는 출력의 마지막 문자열을 설정 할 수 있습니다. 

 

 

 

 

file 인자값의 이용

 

with open('test.txt', 'w') as file:
    print('Hello World!', file=file)

file 인자값을 이용할 경우, 위에서 언급한 대로, 표준출력이 아닌, 파일에 해당

 

 

 

 

 

flush 인자값의 이용

 

대부분의 입력의 경우 buffer의 영역에 데이터가 입력이 되고, 일정양, 혹은 일정 시간동안 보관된 buffer 의 내용이 화면에 노출이 되게 됩니다. flush의 인자값을 사용할 경우, buffer에 보관하지 말고 바로 출력하라는 의미로 해석 될 수 있습니다. 

해당 내용을 어떻게 샘플링 할 수 있을까 했는데, 다른 블로그 분이 샘플링 한게 있어서 URL을 참조 영역에 첨부 하오니 참고 부탁드립니다. 

 

import time
for i in range(10):
    print(i, end=' ', flush=False)
    time.sleep(0.1)

해당 인자가 False의 경우에는 한번에 화면에 출력되지만, True 일 경우에는 0 ~ 9까지 순차적으로 표기됩니다. 

 

 

 

 

참조

https://docs.python.org/3/library/functions.html?highlight=print#print 

https://velog.io/@janeljs/python-print-sep-end-file-flush

 

 

 

 

END


 

 

 

 

 

728x90
728x90
반응형

 

 

 

 

 


들어가며

기본적으로 파이썬 하면 Pycharm 툴을 많이 사용하는데요. 가볍게 학습을 하거나, 가볍게 디버깅할때 좋은 툴이 있어서 정리해봅니다. 

 

 

 

 

 

 

Thonny

 

https://thonny.org/

 

Thonny, Python IDE for beginners

Thonny 4 is dedicated to Ukraine fighting the Russian invasion. 🇺🇦 Please support Ukraine! 🇺🇦 Download version 4.0.1 for  •   •  Thonny Python IDE for beginners Features Easy to get started. Thonny comes with Python 3.10 built in, so ju

thonny.org

Thonny 라는 툴인데요. UI 도 복잡하지 않고, 무겁지 않아서 가볍게 학습하기 좋고,

디버깅을 하면서, 바로바로 데이터의 흐름을 판단하기 좋은 툴입니다. 

 

 

 

 

 

 

 

 

다운로드

 

Installer with 64-bit Python 3.10, requires 64-bit Windows 8.1 / 10 / 11
thonny-4.0.1.exe (20.4 MB)  recommended for you

 

 

저는 윈도우 환경이여서, 해당 파일을 다운받아서 설치하였습니다. 

 

 

 

 

 

설치

 

설치하는 과정이 어렵지 않아서, 캡쳐 화면만 첨부합니다. 

무엇을 준비해야 하는지만 참고하세요. 

 

 

 

 

 

실행화면

 

어플을 실행하면, 위와 같이 심플한 구성으로 되어 있고요. UI도 직관적이여서

사용하는데 불편함이 없으실 겁니다. 

 

 

 

 

 

 

디버깅

 

상단에 있는 벌레(거미) 모양의 버튼을 누르면 디버깅이 진행이 됩니다. 

 

그럴경우, 각 단계별로 하이라이팅 되며, 실행되는 모습을 바로바로 확인 할 수 있는 것이 장점입니다.

처음 파이썬을 학습하시거나, 처음 프로그램 코딩에 입문하시는 분들이라면, 데이터의 흐름이 궁금하실텐데요.

 

이 과정을 통해 학습이 조금 쉬워질수 있을것 같습니다. 

 

 

F7 펑션키를 누르게 되면, 한 단계씩 진행되며, 데이터가 어떠한 과정으로 변하게 되는지, 

어떠한 모듈을 참조하게 되는지 과정을 볼 수 있으니, 초보자 분들은 한번씩 경험해 보는게 좋을거 같아요

 

 

 

 

 

 

END


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
728x90
반응형

 

 


들어가며

개인적으로 만들어보고 싶은 프로젝트가 있어서 알아보던중, 파이썬이 적합 할 것 같아서 개인적으로 공부를 하고 있는데요. 공부하는 김에 내용을 같이 정리하고자 기록합니다. 

그러다 보니 두서없이 알아본 내용 중심으로 기록할 것 같습니다. 참고해주세요.

 

 

 

 

 

 

Python 다운로드

https://www.python.org/downloads/

 

Download Python

The official home of the Python Programming Language

www.python.org

파이썬을 사용하려면, 파이썬을 설치해야 하는데요. 

해당 사이트접속해서 다운로드를 진행하면 됩니다. 

 

 

 

 

 

윈도우 버전 다운로드

 

각 환경별로 다운로드가 가능하지만, 사이트에 접속하면, 접속한 PC환경에 따라 추천을 해주니 버튼을 클릭해서 다운로드 받으면 됩니다. 

 

 

 

 

 

설치 진행

 

설치를 하는 방법은 크게 어렵진 않습니다. 

설치 파일을 클릭하면 되며, 환경변수 등록과 관련한 체크박스만 선택하면 됩니다. 

 

 

 

 

환경변수 등록이 안되었다면?

 

만약 환경 변수를 선택하지 못했다면, 수동으로 선택하면 됩니다. 

시스템 > 고급설정의 환경변수를 선택하면 됩니다. 

 

Python (파이썬)이 설치되는 위치는 아래와 같습니다. 

참고해주세요!

C:\Users\xxxxxx\AppData\Local\Programs\Python\Python310

 

 

 

 

 

 

 

 

END


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90

+ Recent posts