콘텐츠로 이동

파이썬 맛보기

1. 파이썬 맛보기 2

문자열 맛보기

문자열이란?

  • 글자 또는 숫자, 특수문자, 공백등이 나열된 것을 의미한다.
  • 파이썬에서 문자열을 표현하기 위해서는 항상 큰 따옴표(“”) 또는 작은 따옴표(‘ ’)로 묶어주어야 한다.

Warning

작은따옴표( ‘ )로 시작한 문자열을 작은따옴표( ’ )로,
큰 따옴표( “ )로 시작한 문자열은 큰 따옴표( ” )로 끝나야 한다

문자열의 예

'안녕하세요.'
"I love the Earth!"
"내가 좋아하는 숫자는 1, 4, 7입니다." '1357'

문자열을 저장한 변수는 '문자열 변수' 가 된다.

# 예제 
# section_006.py

print('안녕하세요.')
print("I love the Earth!")
print("내가 좋아하는 숫자는 1, 4, 7 입니다. ")

city = 'Seoul'
dosi = "미래도시"

print(dosi)
print(city)

Output

안녕하세요.
I Love the Earth!
내가 좋아하는 숫자는 1, 4, 7 입니다.
미래 도시
Seoul

파이썬 문장

문장(statement)

  • 문장은 보통 파이썬코드로 한줄을 구성할 수 있는 모든것을 말한다.
  • 여러문장을 한줄에 나타내고 싶으면 세미콜론(;)을 사용한다.
  • 한문장을 여러줄로 나누어 나타내고 싶을때는 문장연결문자인 역슬래시()를 해당 줄의 끝에 입력한다.
num1 = 10
num2 = 20   ==> num1 = 10; num2 = 20; num3 = 30
num3 = 30

sum = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9  
sum = 1 + 2 + 3 +\
      4 + 5 + 6 +\
      7 + 8 + 9
#section_007.py

number = 1
print(number)

num1 = 10; num2 = 20; num3 = 30
print(num1 + num2 + num3)

sum = 1 + 2 + 3 +\
      4 + 5 + 6 +\
      7 + 8 + 9
print(sum)

tup = (1 + 2 + 3 +
      4 + 5 + 6 +
      7 + 8 + 9)
print(tup)

color = [
    'red',
    'blue',
    'green']

print(color)

Output

1
60
45
45
['red', 'blue', 'queen']

함수 맛보기

함수(function) 란?

  • 함수는 특정한 일을 처리해주는 코드들의 집합이다.
  • 함수는 호출됨으로써 그 기능을 실행시킬 수 있다.
  • 함수를 공부할때는 함수의 기능과 함께 함수의 입력값과 반환값이 어떤 형태인지를 기억해야 한다.
#section_008.py

print("안녕! 나도 함수야")
length = len("이 문자열의 길이는 얼마일까 ?")
print(length)

max_number = max(11, 2, 63, 47, 50)
print(max_number)

Output

안녕! 나도 함수야
16
63

파이썬에서 사용되는 함수 몇 가지

함수 설명
print() 입력 값을 화면에 출력해 준다.
max() 입력 값들 중에 최대값을 구해서 반환해 준다.
min() 입력 값들 중에 최소값을 구해서 반환해 준다.
len() 입력된 문자열의 길이를 구해서 반환해 준다.
sum() 입력 값들의 합계를 구해서 반환해 준다.

사용자로부터 입력받기

  • 프로그램은 기본적으로 입력 → 처리 → 출력의 세 단계를 계속 반복하면서 실행된다.
  • 쉘 화면을 통해 사용자로부터 값을 입력받을 때는 input( ) 함수를 사용한다.
  • input() 함수의 괄호 안에는 값을 입력받을 때 사용자에게 전달할 지시 내용을 삽입할 수 있다.
# section_009.py

print('회원가입 기본 정보')
name = input()
age = input('나이를 입력하세요: ')

print('당신의 이름과 나이는 다음과 같습니다.')
print(name)
print(age)

Output

회원가입기본정보
홍길동
나이를 입력하세요: 28
당신의 이름과 나이는 다음과 같습니다.
홍길동
28

2. 파이썬 맛보기 3

모듈 맛보기

모듈(module) 이란?

  • 모듈은서로관련있는코드들을모아놓은파일이다
  • 모듈을내프로그램에서사용하려면import명령을사용해서필요한모듈을 가져와 내 프로그램에 포함시켜야 한다.
  • 모듈을임포트한후에는해당모듈이제공하는기능을편리하게사용할수 있다.

내장 모듈(built-in module) vs 서드 파티 모듈(third-party module)

  • 내장모듈:
    • 파이썬이기본적으로제공하는모듈.
    • import하기전에추가
    • 설치가 필요없다.
  • 서드파티모듈:
    • 외부다른개발자가파이썬에서사용할수있도록만들어 놓은 모듈.
    • import 하기 전에 추가
    • 설치가 필요하다.
# section_010.py
import math

print(math.pi)
print(math.sqrt(16))

r = 10
cir = 2 * math.pi * r

print('반지름이', r, '인 원의 둘래는', cir, '이다.')

Output

3.141592653589793
4.0
반지름이 10 인 원의 둘래는 62.83185307179586 이다.

오류와 친해지기

  • 컴퓨터가 이해할 수 없는 문법적 문제 또는 논리적 문제를 오류라고 한다.
  • 오류를 수정하는 과정을 디버깅이라고 한다.
# section_011.py

# 함수이름을 잘못 입력한 경우
frint(2020) 

# 문자열의 시작과 끝을 서로 다른 따옴표로 입력한 경우
print("안녕하세요.')

Output

NameError: name 'frint' is not defined

print("안녕하세요.')
^
SyntaxError: EOL while scanning string literal

복합 대입 연산자

  • 복합 대입 연산자는 대입 연산자(=)와 계산에 사용되는 연산자를 합쳐놓은 것이다.
  • 복합 대입 연산자를 이용하면 코드를 좀 더 간결하게 표현할 수 있다.

복합 대입 연산자의 종류

복합대입연산자 같은표현 복합대입연산자 같은표현
x += y x = x + y x //= y x = x // y
x -= y x = x - y x %= y x = x % y
x *= y x = x * y x **= y x = x ** y
x /= y x = x / y
# section_012.py

x = 5

x = x + 1
print(x)

x += 1 # x = x + 1
print(x)

y = 10
y *= x # y = y * x
print(y)

Output

6
7
70

연산자 우선 순위

  • 연산자들 사이에는 우선 순위가 있다.
  • 동등한 우선 순위를 가지는 연산자들이 나열되어 있을 때에는 가장 왼쪽에 놓인 동등 우선 순위 연산부터 오른쪽 방향으로 순서대로 계산한다.
  • 괄호는 산술 연산자나 대입 연산자에 비해 우선 순위가 가장 높으며, 대입 연산자와 복합 대입 연산자는 가장 낮은 우선 순위를 갖는다.
우선순위 연산자 참고
1 () 괄호(괄호 안의 내용을 먼저 계산한다)
2 ** 지수승
3 *,/,//,% 곱셈, 나눗셈, 나머지 연산
4 +, - 덧센, 뺄샘
5 =, 복합 대입 연산자 대입 연산자와 복합 대입 연산자
# section_013.py

x = 5

x =  x + 1 * 10 
print(x)

y = 42 - 1 + 1 - 10
print(y)

z = (x+ y) * 6
print(z)

Output

15
32
282

3. 기본자료형

여러 개의 값 출력하기

  • print( )문으로 여러 개의 값을 출력할 수 있다.
    • print()문으로 문자열, 변수, 숫자 등 여러개의 값을 출력하고자 할때는 괄호 안에 출력할 값을 콤마( , )로 구분하여 지정하여야 한다.
    • 출력되는 각 값 사이에는 기본적으로 공백이 자동 삽입되어 출력된다.
print('질량은', mass)
print(mass, height, mass * height)
  • print( )만 입력하면 빈 줄을 출력한다.
  • print( ) 문 사용 시, sep=‘원하는 문자‘ 옵션을 이용하면 출력 값들을 공백 대신 다른 문자로 구분하여 출력할 수 있다
print(mass, height, mass * height, sep=,)
  • print( )문은 프로그램의 실행 과정에서 변수의 변화를 파악하면서 디버깅하는데 자주 활용된다.
# section_014.py

mass = 100
height = 1.7
g = 9.8065

print('질량은', mass)
print('높이는', height)
print('중력상수는', g)
print()

# 여러 변수 출력하기
print(mass, height, mass * height * g)
print()

# 구분자 넣고 출력하기
print(mass, height, mass * height * g, sep=',')
print(mass, height, mass * height * g, sep=' 에헴 ')

Output

질량은 100
높이는 1.7
중력상수는 9.8065

100 1.7 1667.105

100,1.7,1667.105
100 에헴 1.7 에헴 1667.105

정수(int) 알아보기

  • 파이썬에서 정수형은 int 형이라고 부르며, 정수는 소수점 아래 값을 가지지 않는 음수, 0, 양수의 집합이다.
  • 파이썬에서는 변수에 값을 대입하는 것만으로 변수의 자료형이 결정된다.
    (파이썬은 변수에 값을 저장하기 전에 변수의 자료형을 미리 지정할 필요가 없다)
  • 변수에 정수가 저장되면 정수형 변수가 되고, 변수에 문자열이 저장되면 문자열형 변수가 된다.
age = 38 # 정수형 변수 
city = 'Seoul' # 문자열형 변수

파이썬에서 변수나 값이 가지고 있는 자료형을 확인하고 싶을 때는 type() 함수를 사용하면 된다. – 파이썬에서 정수형은 로 표현된다.

# section_015.py

age = 38
print(type(age))

bigNumber = 2 ** 124
print(bigNumber)
print(type(bigNumber))

Output

<class 'int'>
21267647932558653966460912964485513216
<class 'int'>

실수(float) 알아보기

  • 파이썬에서 실수형은 float 형이라고 부르며, 실수형은 소수점이 들어간 수를 표현하기 위해 사용한다.
  • 실수형 변수를 사용하면 정수 값보다 더 세밀한 값을 표현할 수 있다.
# section_015.py

pi = 3.14
print("변수 pi의 자료형은 ", type(pi))

pi = 3
print("변수 pi의 자료형은 ", type(pi))

Output

변수 pi의 자료형은 <class 'float'>
변수 pi의 자료형은 <class 'int'>

복소수(complex) 알아보기

파이썬에서 복소수형은 complex 형이라고 부르며, 복소수를 표현하기 위해 사용한다.

  • 복소수란 실수와 허수를 표현하는 수학적 표기법으로 a + bj 식으로 표현하는 수를 말한다

파이썬에서 복소수를 저장하는 방법은 두 가지가 있다.

  1. 변수에 복소수를 직접 지정하는 방법

     comp1 = 2 + 5j
    

  2. complex() 함수를 사용하는 방법

    comp2 = complex(3,-6) # 3 - 6j
    

  • 복소수에서 실수 부분만 따로 떼어내서 보고 싶으면 변수명.real 을 사용하고, 허수 부분만 따로 떼어내서 보고 싶으면 변수명.imag 를 사용한다.
  • 복소수의 켤레 복소수를 구하고 싶을 때는 변수명.conjugate()를 사용한다.
# section_017.py

comp1 = 2 + 5j;
print("변수 comp1 의 자료형은", type(comp1))
print()

comp2 = complex(3, -6)

print("복소수 comp2의 값은 ", comp2)
print("실수 부분은", comp2.real)
print("허수 부분은", comp2.imag)
print("켤래 복소수는", comp2.conjugate())

Output

복소수 comp2의 값은 (3-6j)
실수 부분은 3.0
허수 부분은 -6.0
켤래 복소수는 (3+6j)

부울(bool) 알아보기

  • 파이썬에서 부울형은 참(True) / 거짓(False)을 표현하기 위한 자료형이다.
  • 부울형에는 True, False 에 해당되는 2개의 값만 존재한다.
  • 파이썬에서 숫자 0은 False 값이고, 그 외의 숫자는 True를 의미한다.
  • 어떤 변수가 가진 값이 참(True)인지 거짓(False)인지 확인하기 위해서는 bool() 함수를 사용한다.
# section_018.py

boot = True 
print(boot)
print(type(boot))

boof = False
print(boof)
print(type(boof))
print()

print(20 > 13) # 두 값의 비교의 결과는?
print(0 < 0)
print('안녕' == '안녕 ') # 문자열이 같은가
print()

birds = 3
print(bool(birds))
bird = 0
print(bool(dirds))

Output

True
<class 'bool'>
False
<class 'bool'>

True
False
False

True
False