[Python 기초] 'Python' 기본 문법 익히기(1)
이번 포스팅에는 Python 기본 문법에 대해 알려드리고자 합니다.
아래의 목차 순서로 설명하겠습니다.
- 변수 설정
- 자료형 데이터
- 입출력
설명에 앞서 Python 프로그램을 설치를 하고 보시기 바랍니다.
활용할 수 있는 프로그램은 Colab, anaconda 등등 많이 있고
저는 개인적으로 anaconda에서 설치할 수 있는 jupyter lab을 사용하고 있습니다.
아직 파이썬을 자세히 모르고 숙련이 되지 않았다면
개인적으로 Colab을 추천합니다.
1. 변수설정
1. 변수(Variable) 설정이란?
'변수'란 영어로 'variable'이라고 합니다. 영어 사전에서 그 뜻을 찾아보면, '변하기 쉬운'의 뜻을 가지고 있습니다.
실제적으로 변수라는 것을 사용하는 경우는 다양합니다. '이번 주말 경기는 날씨가 변수네..' 와 같이 우리는 일상생활에서 '변수'라는 말을 많이 사용합니다. 뿐만 아니라 '변수 x에 10을 대입하면, 결과는 얼마?'와 같이 수학에서도 '변수'라는 것을 사용합니다.
일상 생활이나 수학에서 사용하는 변수라는 것은 '특정 위치(장소)에 어떤 값을 넣었을 때 결과가 변하는 것'이라고 볼 수 있습니다. 즉, 변수에 어떤 값이 있냐에 따라 어떤 결과나 행위를 다르게 할 수 있다는 말입니다.
이처럼 컴퓨터 언어 또한 등호(=)를 이용하여 변수를 지정하고 원하는 데이터를 넣을 수 있습니다.
# 변수 설정 예시
a = 5
print(a)
5
단, 변수 이름을 설정할 때 준수해야 할 규칙이 있습니다. (아래의 4가지 변수는 규칙을 지키지 않은 조건입니다.)
- 숫자로 시작하는 변수
- 공백이 포함된 변수
- 기호가 포함된 변수(밑줄 제외)
- 예약어
# 잘못된 변수 설정 예시
1abc = '안녕하세요!'
print(1abc)
SyntaxError: invalid syntax
이처럼 규칙을 지키지 않고 변수를 설정하게 되면 이와 같은 오류코드가 뜨게 됩니다.
변수 설정 시 4가지 위반사항 꼭 주의하시길 바랍니다.
또한, 에러는 발생하지 않지만 알아 두어야 하는 규칙이 있습니다.
- 대소문자를 구분한다.
- 한 번에 여러 변수를 선언할 수 있다.
- 하나의 값을 여러 변수에 담을 수 있다.
2. 자료형 데이터 (숫자형, 불리언, 문자형)
1. 숫자형 데이터
숫자형 데이터에는 정수형(integer)과 실수형(float)으로 나뉩니다. 형태를 확인하기 위한 함수로 type()을 사용하면
데이터가 어떤 유형을 가지고 있는지 알 수 있습니다. 정수형은 소수점이 없는 숫자이고 실수형은 소수점이 있습니다.
a = 15
type(a)
int
b = 15.33333
type(b)
float
2. 불리언 데이터 (True / False)
불리언은 입력한 조건식이 참인지, 거짓인지를 나타내는 자료형으로 어떠한 연산식의 옳고 그름을 판단하는데 사용합니다
또한 type()함수를 사용하여 형태를 확인하게 되면 bool이라는 값을 알 수 있습니다.
a = 10 > 20
a
False
type(a)
bool
3. 문자형 데이터(string, str)
문자형은 큰 따옴표(" ")또는 작은 따옴표(' ')안에 문자를 넣어서 만듭니다.
# 따옴표로 감싼 문자
a = "Hello Python!"
print(a)
Hello Python!
코드를 작성하다가 처음에 지정한 데이터 타입이 아닌 새로운 타입으로 변경해야 하는 경우에는
데이터의 형태를 변환 할 수도 있습니다. 예를 들면 이렇습니다.
tep = '20'
hum = '22'
tep + hum
2022
int(tep) + int(hum)
42
숫자이긴 하지만 문자형 데이터로 코딩된 데이터를 더하게 되면 숫자끼리의 계산이 되지 않습니다.
이 경우에 문자형 데이터를 정수형 데이터로 바꿔 계산하게 됩니다.
2-1 자료형 데이터(2) - 컨테이너
컨테이너 타입의 자료형 데이터는 크게 4가지로 분류됩니다.
- 리스트(list) : 데이터를 연속적으로 관리, 값을 바꿀 수 있음
- 튜플(tuple) : 데이터를 연속적으로 관리, 값을 바꿀 수 없음
- 세트(set) : 집합과 같은 속성
- 딕셔너리(dictionary) : key-value 쌍
1. 리스트(list)
리스트는 대괄호[ ] 안에 여러 개의 아이템을 콤마(,)로 연결하여 만든 자료입니다.
각각의 아이템은 순서를 가지고 있으며 이 순서를 활용해서 아이템을 선택하거나 변경, 추가, 삭제가 가능합니다.
fruit_list = ['apple', 'orange', 'strawberry']
# 중복된 아이템도 허용
fruit_list = ['apple', 'orange', 'strawberry', 'apple']
2. 튜플(tuple)
튜플은 소괄호 () 안에 여러 개의 아이템을 콤마(,)로 연결하여 만든 자료형입니다. 각각의 아이템은 리스트와 마찬가지로 순서를 가지고 있지만 튜플은 아이템을 선택하여 변경, 추가, 삭제가 불가합니다.
fruit_tuple = ("apple", "banana", "orange", "apple", "banana")
fruit_tuple
('apple', 'banana', 'orange', 'apple', 'banana')
3. 셋(set)
셋은 중괄호{ } 안에 여러 개의 아이템을 콤마(,)로 연결하여 만든 자료형입니다. 세트는 집합의 성격을 가지고 있는 타입으로 각각의 아이템은 순서를 가지고 있지 않습니다. 그렇게 때문에 리스트나 튜플처럼 인덱스의 개념이 존재하지 않습니다.
fruit_set = {"apple", "banana", "orange", "apple", "banana"}
fruit_set # 중복 허용하지 않음
{'apple', 'banana', 'orange'}
4. 딕셔너리(dictionary)
딕셔너리는 중괄호 {} 안에 여러 개의 키(key)-값(value) 쌍을 가지는 아이템을 콤마(,)로 연결하여 만든 자료형입니다.
각각의 아이템이 가지고 있는 키(key)를 활용해서 아이템의 값(value) 선택하거나 변경, 추가, 삭제가 가능합니다.
my_dict = {
"name": "Harry",
"age": 27,
"height" : 190,
"weight" : 99.9
}
my_dict
{'name': 'Harry', 'age': 27, 'height': 190, 'weight': 99.9}
3. 입출력
입출력 내용은 시스템 입력과 시스템 출력으로 나눠서 설명하겠습니다.
1. 시스템 입력 input( )
input()을 사용한 예시입니다.
name = input("이름을 입력하세요:")
print(name + "님, 안녕하세요")
# 홍길동 삽입
이름을 입력하세요: 홍길동
홍길동님, 안녕하세요
이처럼 사용자의 키를 입력으로 받고, 주어진 문장이나 공식을 계산하여 print( )로 출력합니다.
2. 시스템 출력 print( )
시스템 출력은 print() 문을 사용합니다. 예시를 통해서 보여드리겠습니다.
print("apple", "peach", "mango")
apple peach mango
#구분 표시하기
print("apple", "peach", "mango", sep =",")
apple,peach,mango
#문자 포맷팅하기
food = "치킨"
text = "나는 {}을 먹고 싶다"
print(text.format(food))
나는 치킨을 먹고 싶다
이처럼 위 세가지의 문법을 잘 익혀서 직접 코딩을 해보면 더 이해하기 쉬울 것입니다.
다음 포스팅에 뵙겠습니다.