'Python 기초'

[Python 기초] 'Python' 기본 문법 익히기(1)

데이터잡스 2022. 7. 11. 09:20

이번 포스팅에는 Python 기본 문법에 대해 알려드리고자 합니다.

아래의 목차 순서로 설명하겠습니다.

  • 변수 설정
  • 자료형 데이터
  • 입출력

설명에 앞서 Python 프로그램을 설치를 하고 보시기 바랍니다.

활용할 수 있는 프로그램은 Colab, anaconda 등등 많이 있고

저는 개인적으로 anaconda에서 설치할 수 있는 jupyter lab을 사용하고 있습니다.

아직 파이썬을 자세히 모르고 숙련이 되지 않았다면

개인적으로 Colab을 추천합니다.


 1. 변수설정

1. 변수(Variable) 설정이란?

'변수'란 영어로 'variable'이라고 합니다. 영어 사전에서 그 뜻을 찾아보면, '변하기 쉬운'의 뜻을 가지고 있습니다.

실제적으로 변수라는 것을 사용하는 경우는 다양합니다. '이번 주말 경기는 날씨가 변수네..' 와 같이 우리는 일상생활에서 '변수'라는 말을 많이 사용합니다. 뿐만 아니라 '변수 x에 10을 대입하면, 결과는 얼마?'와 같이 수학에서도 '변수'라는 것을 사용합니다.

일상 생활이나 수학에서 사용하는 변수라는 것은 '특정 위치(장소)에 어떤 값을 넣었을 때 결과가 변하는 것'이라고 볼 수 있습니다. 즉, 변수에 어떤 값이 있냐에 따라 어떤 결과나 행위를 다르게 할 수 있다는 말입니다.

이처럼 컴퓨터 언어 또한 등호(=)를 이용하여 변수를 지정하고 원하는 데이터를 넣을 수 있습니다.

# 변수 설정 예시
a = 5
print(a)
5

 

단, 변수 이름을 설정할 때 준수해야 할 규칙이 있습니다. (아래의 4가지 변수는 규칙을 지키지 않은 조건입니다.)

  1. 숫자로 시작하는 변수
  2. 공백이 포함된 변수
  3. 기호가 포함된 변수(밑줄 제외)
  4. 예약어
# 잘못된 변수 설정 예시
1abc = '안녕하세요!'
print(1abc)
SyntaxError: invalid syntax

이처럼 규칙을 지키지 않고 변수를 설정하게 되면 이와 같은 오류코드가 뜨게 됩니다.

변수 설정 시 4가지 위반사항 꼭 주의하시길 바랍니다.

 

또한, 에러는 발생하지 않지만 알아 두어야 하는 규칙이 있습니다.

  1. 대소문자를 구분한다.
  2. 한 번에 여러 변수를 선언할 수 있다.
  3. 하나의 값을 여러 변수에 담을 수 있다.

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))
나는 치킨을 먹고 싶다

이처럼 위 세가지의 문법을 잘 익혀서 직접 코딩을 해보면 더 이해하기 쉬울 것입니다.

다음 포스팅에 뵙겠습니다.