• 이번에는 기초 부분 중에서 특이한 부분만 언급하도록 하겠다.
  • 다른 언어와 완전히 동일한 기초 내용은 다루지 않는다.

 

논리 연산자

  • and, or, not 연산자가 &&, ||, ! 형태로 사용되지 않고 and, or, not 표현 그대로 사용된다.

 

[Source Code]

print(True and True)
print(True and False)
print(False and False)

print(True or True)
print(True or False)
print(False or False)

print(not True)
print(not False)

 

[결과]

True
False
False
True
True
False
False
True

Process finished with exit code 0

 

 

음수 인덱스 사용

  • 특이하게, 시퀀스 자료형에서 인덱스로 음수를 사용할 수 있다.

 

[Source Code]

sequenceData = “This is sequence data!!”

print(sequenceData[1])
print(sequenceData[-1])
print(sequenceData[-33])

 

[결과]

h
!
a

Process finished with exit code 0

 

 

슬라이싱

  • 시퀀스 자료형에서 슬라이싱을 통해 특정 범위의 값만 다시 시퀀스로 가져올 수 있다.
  • 변수명[여기] <- 여기에 자를 범위를 인덱스로 설정해주면 된다.
    • 시작:끝 -> 시작 ~ 끝전까지
    • :끝 -> 처음부터 명시된 곳 전까지
    • 시작: -> 명시된 곳부터 끝까지
    • ::숫자 -> 해당 숫자 간격으로 잘라서 하나씩 가져옴
  • 마찬가지로 음수 인덱스를 사용할 수 있다.

 

[Source Code]

sequenceData = “This is sequence data!!”

cutData = sequenceData[5:7]
print(cutData)
cutData = sequenceData[:4]
print(cutData)
cutData = sequenceData[-6:]
print(cutData)
cutData = sequenceData[::3]
print(cutData)

 

[결과]

is
This
data!!
Tsseeea!

Process finished with exit code 0

 

 

+ 연산자로 시퀀스 자료형 합치기

  • String 뿐만 아니라 다른 시퀀스 자료형도 +로 합칠 수 있다.

 

[Source Code]

array1 = [1,2,3]
array2 = [4,5,6]
print(array1 + array2)

 

[결과]

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

Process finished with exit code 0

 

 

* 연산자로 시퀀스 자료형 반복

  • sequence * n 형태로 자료형을 반복해서 새로운 시퀀스를 만들 수 있다.

 

[Source Code]

array1 = [1,2,3]
print(array1 * 3)

 

[결과]

[1, 2, 3, 1, 2, 3, 1, 2, 3]

Process finished with exit code 0

 

 

in으로 시퀀스 안에 해당 값이 들어있는지 파악하기

  • in을 통해 간단하게 시퀀스 안에 해당 값이 있는지를 파악할 수 있다.
  • 값 in 시퀀스 형태로 사용할 수 있다.
  • 해당 구문은 Boolean 형태의 결과로 동작한다.

 

[Source Code]

array1 = [1,2,3]
print(1 in array1)
print(5 in array1)

if 2 in array1:
    print('2가 array 안에 있습니다.')

 

[결과]

True
False
2가 array 안에 있습니다.

Process finished with exit code 0

 

 

문자열 안에 변수 출력하기

  • print할 때 문자열 안에 변수를 함께 출력할 수 있다.
  • C언어의 printf와 비슷하다.
  • %c(캐릭터), %s(String), %f(실수), %d(정수), %%(그냥 %) 를 사용할 수 있다.
  • print(‘%x’,%(변수명)) 형태로 뒤에 %를 쓰고 괄호 안에 변수 명을 적어준다.
  • 변수를 여러개 출력할 경우, 뒤에 %(변수명1, 변수명2, …) 형태로 사용하면 된다.

 

[Source Code]

str = '파이썬'
num1 = 123
num2 = 111
num3 = 3.141592

print('이것은 %s 예제입니다.' %(str))
print('%d + %d는 %d입니다.' %(num1, num2, num1+num2))
print('파이는 %f입니다.' %(num3))

 

[결과]

이것은 파이썬 예제입니다.
123 + 111는 234입니다.
파이는 3.141592입니다.

Process finished with exit code 0

'Python' 카테고리의 다른 글

Python 기초 2  (0) 2019.06.10
Python 기초 1  (0) 2019.06.09
파이썬 함수 사용  (0) 2017.05.03
파이썬 변수 사용  (0) 2017.05.03
파이썬 문자열 출력  (0) 2017.05.03

중괄호 대신 들여쓰기

  • python에서는 중괄호 대신에 들여쓰기로 블럭을 구분한다.
  • if문, 함수 등등 중괄호를 사용하는 것들에 대해 들여쓰기를 사용한다.
  • 만약 들여쓰기를 제대로 맞추지 않고, 덜 들여쓰거나 더 들여쓰면 에러가 발생하게 된다.
  • 다른 프로그래밍 언어를 생각할 때, 들여쓰기를 한다면 중괄호를 연 것이고 한칸 들여쓰기를 덜 한다면 중괄호를 닫은 것으로 생각하면 된다. 갑자기 중괄호를 닫거나 열면 에러가 나는 것이니까 동일하게 생각하면 된다.
  • main 부분 코드의 시작은 들여쓰기가 되지 않은 상태여야 한다.

 

[Source Code]

data = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]

if ‘e’ in data:
    print(‘data에서 e를 찾았습니다.’)
else:
    print(‘e가 data에 없습니다.’)

 

[결과]

data에서 e를 찾았습니다.

Process finished with exit code 0

 

 

조건문

  • 조건문의 기본 개념과 동작 원리는 다른 언어들과 비슷하다.
  • 특이한 점은 조건문의 조건을 작성할 때, 괄호를 사용하지 않는다는 점이다. 이는 swift와 비슷하다고 보면 된다.
  • 중괄호가 없기 때문에 조건 뒤에는 콜론(:)을 붙여주며, 조건문의 블록에 해당하는 부분에는 들여쓰기를 적용해주어야 한다.
  • else if의 경우는 python에서는 elif로 사용한다.

 

[Source Code]

a = 7
b = 2

if a/b == 2:
    print('a/b는 2입니다.')
elif a/b == 3:
    print('a/b는 3입니다.')
else:
    print('a/b는 2가 아닙니다.')

 

[결과]

a/b는 3입니다.

Process finished with exit code 0

 

 

반복문 - for문

  • for문의 경우도 C언어보다 높은 레벨의 다른 프로그래밍 언어들과 비슷하다.
  • for-in 구문을 사용할 수 있고, continue와 break도 사용할 수 있다.
  • for 변수 in 범위 형태로 사용할 수 있다.
  • 위에 언급한 범위로 사용할 수 있는 항목들은 다음과 같다.
    • 문자열
    • 리스트/튜플/딕셔너리
    • range()
    • 반복 가능한 객체
  • 특이한 문법으로는 for-else문이 있는데, 이는 밑에서 따로 다루도록 하겠다. 우선 기본 예제만 작성해보았다.

 

[Source Code - 1]

str = ‘plus lab python’
for character in str:
    print(character)

 

[결과 - 1]

p
l
u
s

l
a
b

p
y
t
h
o
n

Process finished with exit code 0

 

[Source Code - 2]

for num in range(10):
    print(num)

 

[결과 - 2]

0
1
2
3
4
5
6
7
8
9

Process finished with exit code 0

 

[Source Code - 3]

numSet = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

for num in numSet:
    if num%2 == 0:
        continue
    elif num > 8:
        break
    print(num)

 

[결과 - 3]

1
3
5
7

Process finished with exit code 0

 

 

for-else문

  • for문 안에서 break가 동작하지 않고, for문이 모두 끝난 후에 else문에 있는 코드가 실행되는 특이한 구문이다.

 

[Source Code - 1]

# for문에서 break가 동작했을 때
numSet = [1, 2, 3, 4, 5, 6, 7, 8]

for num in numSet:
    if num > 5:
        break
else:
    print(‘break문 동작하지 않음’)

 

[결과 - 1]

Process finished with exit code 0

 

[Source Code - 2]

# for문이 break가 동작하지 않았을 때
numSet = [1, 2, 3, 4, 5]

for num in numSet:
    if num > 5:
        break
else:
    print('break문 동작하지 않음')

 

[결과 - 2]

break문 동작하지 않음

Process finished with exit code 0

 

 

반복문 - while문

  • while문도 다른 언어들과 비슷하다.
  • for문과 마찬가지로 continue와 break를 사용할 수 있다.

 

[Source Code]

# 1~10까지의 합을 구해보자
num = 1
result = 0

while num <= 10:
    result += num
    num += 1

print(result)

 

[결과]

55

Process finished with exit code 0

'Python' 카테고리의 다른 글

Python 기초 3  (0) 2019.06.11
Python 기초 1  (0) 2019.06.09
파이썬 함수 사용  (0) 2017.05.03
파이썬 변수 사용  (0) 2017.05.03
파이썬 문자열 출력  (0) 2017.05.03

기본 출력, 변수 설정

  • print 함수는 일반적인 사용 방법과 비슷하다.
  • String을 지정할 때 특이한 게 쌍따옴표(“)가 아닌, 일반 따옴표(')를 사용한다.
  • 변수를 설정할 때 var나 let을 사용하지 않고 바로 사용하면 자동 선언과 동시에 값이 할당된다.

[Source Code]

print('Hello World')
print('String은 작은 따옴표로!')
a = 1
b = 2
print(a + b)
print('var나 let을 사용하지 않아도 변수 출력 가능')

 

[결과]

Hello World
String은 작은 따옴표로!
3
var나 let을 사용하지 않아도 변수 출력 가능

Process finished with exit code 0

 


변수 작명

  • 파이썬의 변수명 규칙은 다른 언어와 비슷하다.
  • 변수명의 첫 글자는 영문자나 언더바(_)로 시작해야 한다.
  • 변수명은 대소문자를 구분한다.
  • 예약어(if, while, for, def, class 등등..)는 변수명으로 사용할 수 없다.
  • 특이한 점은 파이썬의 기본 라이브러리 함수명을 변수명으로 선언하게 되면, 선언은 할 수 있지만 해당 함수를 사용할 수 없게 된다.

[Source Code 1]

print(abs(-1))

 

[결과 1]

1

Process finished with exit code 0

 

[Source Code 2]

abs = 3
print(abs(-1))

 

[결과 2]

Traceback (most recent call last):
  File "XXXXXXXXXX", line 4, in <module>
    print(abs(-1))
TypeError: 'int' object is not callable

Process finished with exit code 1
기본 함수를 변수명으로 선언하게 되면 사용은 가능하지만 기존 함수를 사용하려고 한다면 위와 같이 에러가 발생한다.

 

 

 

변수 생성

  • C/C++ 언어와는 다르게 변수의 타입을 지정해주지 않아도 된다.
  • 심지어 Kotlin, Swift처럼 var, let을 사용하지 않아도 변수를 선언할 수 있다.
  • 변수에 값을 대입해주면 해당 변수의 타입이 알아서 정해진다.
  • Swift는 var를 사용하여 선언했어도 타입이 한 번 정해지면 다른 타입을 저장하지는 못 하지만, 파이썬의 경우는 처음에 정수를 받았지만 나중에 string을 넣는 것도 가능하다.

[Source Code]

num = 3
print(num)
num += 1
print(num)
num = ‘hello num’
print(num)

 

[결과]

3
4
hello num

Process finished with exit code 0

 


주석

  • 파이썬에서는 주석을 ‘#’으로 처리한다.
  • 여러줄을 주석처리할 때는 쌍따옴표(“)를 세번(“””)사용해서 시작과 끝을 지정해서 처리해준다.

[Source Code]

# 주석 부분!!
num = 3
print(num)
“”” 이 사이는 통째로 주석
num += 1
print(num)
“””
num = ‘hello num’
print(num)

 

[결과]

3
hello num

Process finished with exit code 0

 

'Python' 카테고리의 다른 글

Python 기초 3  (0) 2019.06.11
Python 기초 2  (0) 2019.06.10
파이썬 함수 사용  (0) 2017.05.03
파이썬 변수 사용  (0) 2017.05.03
파이썬 문자열 출력  (0) 2017.05.03

소스 코드

def adder(a, b):
return a + b

x = 5
y = 2

result = adder(x, y)

print(result)



프로그램 실행 결과

7

Process finished with exit code 0


파이썬에서 함수를 생성할 때는 위의 소스코드와 같이 def를 이용해서 함수 이름과 받을 변수들을 지정해줍니다.

파이썬은 세미콜론(;)이나 중괄호를 사용하지 않기 때문에 띄어쓰기를 잘 해주어야 합니다.

함수를 지정한 후에, 해당 함수의 기능 부분을 구현할 때는 탭을 이용하여 들여쓰기 해준 후에 기능 부분을 작성해줍니다.

위에 있는 소스 코드 예시를 보면 이해할 수 있습니다.

함수를 호출하여 사용하는 방법은 일반적인 프로그래밍 언어에서의 방식과 동일합니다.

'Python' 카테고리의 다른 글

Python 기초 3  (0) 2019.06.11
Python 기초 2  (0) 2019.06.10
Python 기초 1  (0) 2019.06.09
파이썬 변수 사용  (0) 2017.05.03
파이썬 문자열 출력  (0) 2017.05.03

소스코드

a = 1
b = 2
c = a + b
print(c + 4)

num_int = 1
num_float = 3.4
num_bool = True

print(num_int)
print(num_float)
print(num_bool)


프로그램 실행 결과

7
1
3.4
True

Process finished with exit code 0



자료형에 값을 저장하고 연산하고 출력하는 것은 일반적인 다른 언어들과 방식이 같습니다.

하지만 다른 언어와는 다르게 파이썬은 변수를 선언하면서 자료형을 지정해줄 필요가 없습니다.

변수에 들어가는 값에 따라서 알맞은 자료형으로 생성됩니다.

'Python' 카테고리의 다른 글

Python 기초 3  (0) 2019.06.11
Python 기초 2  (0) 2019.06.10
Python 기초 1  (0) 2019.06.09
파이썬 함수 사용  (0) 2017.05.03
파이썬 문자열 출력  (0) 2017.05.03

+ Recent posts