[Python] 데이터타입 리스트 분기문
이 카테고리에서는 파이썬의 기초부터 쭈욱 포스팅해나갈 생각입니다.
이번 시간에는 데이터타입과 리스트, 분기문을 알아보겠습니다.
데이터 타입
타입이 엄청 많죠? 앞으로 이것들에 대해서 배울건데 너무 겁먹지 말고 천천히 알아봅시다!
숫자
숫자형 데이터는 숫자만으로 구성된 데이터로 천단위 구분기호를 사용하지 않습니다. 다음 코드는 숫자 1000을 표현하려는 의도로 작성했지만 코드를 실행하면 이상한(?) 결과가 출력됩니다. 천단위 구분기호가 없어야 파이썬은 “숫자”로 인식합니다.
1
2
print(1000)
print(100.0)
이런 코드를 쓰면 위에는 정수타입(int)로 되고 밑에는 실수타입(float)으로 파이썬에서 자동으로 처리해줍니다.
따라서 1000과 100.0이 출력되겠네요.
문자열
작은따옴표(‘‘)나 큰따옴표(““)로 묶인 문자들의 집합을 문자열이라고 부릅니다.
1
"I'm a boy"
이런 것처럼 전체 따옴표에 영향을 주지 않는 다른 종류의 따옴표는 그냥 쓸 수 있습니다.
문자열 끼리 + 연산에는 이어붙일 수 있고 다른 타입과는 작동하지 않습니다. 문자열끼리만!
곱하기(*)연산은 문자열과 숫자로 할 수 있는데요 곱하기 연산 뒤에 오는 숫자만큼 반복해서 문자열을 복사할 수 있습니다.
1
2
3
print(77000*3,"원")
print(292000*4,"원")
print(38350*4,"원")
이렇게하면 첫번째 한칸 뛰고 두번째가 나갑니다.
변수
변수는 우리가 설정한 임의의 변수에 원하는 값을 대입(바인딩)해서 메모리에 올리는 것입니다. 그리고 이 변수로 여러가지 작업을 하는 것이죠.
문자열과 슬라이싱
1
2
string = "hello minsu"
print(string[0:5])
인덱싱은 [:]형태로 표현하며 처음 숫자는 인덱스의 시작으로 뒤의 인덱스까지 잘라서 보여줍니다. 주의할 점은 앞 인덱스는 “이상”의 개념이고 뒤의 인덱스는 “미만”의 개념입니다. 따라서 위의 코드는 hello가 출력되겠네요!
문자열은 한번 선언되면 수정이 불가합니다.
1
string[0] = "H"
이렇게 위에서 한번 선언한 문자열의 첫번째 문자를 수정할 수 없게되죠.
리스트
리스트는 순서가 있는 자료구조로 대괄호 기호 [ ]로 정의합니다. 다른 언어와 달리 파이썬에서는 리스트 안에 통일된 데이터타입이 필요없이, 숫자와 문자열 등등 혼합해서 만들 수 있습니다. 그리고 문자열과 달리 각 원소마다 수정이 가능합니다.
1
2
list1=['동희','호로록']
print(list1)
위와 같이 list1을 선언해주고 첫번째 인덱스에 ‘동희’, 두번째엔 ‘호로록’ 넣었습니다. 출력하면 저대로 나오겠죠?
리스트의 인덱싱과 슬라이싱
문자열과 같이 [x]로 인덱싱과 [x:y]로 슬라이싱이 가능합니다.
1
list1[0] = "신동희"
이렇게 문자열과 달리 인덱싱해서 각 원소에 접근과 수정이 가능합니다. 이유는 각 원소가 따로 메모리 배정 받아서 인덱스가 참조하고 있기 때문입니다.
여러가지 메서드
remove 메서드는 삭제할 값을 입력받아 리스트에서 제거합니다.
pop 메서드는 인덱스를 입력받아 하나의 값을 제거합니다.
del 키워드를 사용해서 제거할 수도 있습니다.
clear 메서드로 모든 데이터를 제거할 수 있습니다.
index 메서드
in 메서드는 리스트에 데이터의 존재 여부를 확인
join 연산자
구분자를 기준으로 리스트 안의 모든 문자열 데이터를 연결
Boolean 데이터 타입
참과 거짓을 표현하는 자료형입니다.
이건 거의 대부분의 프로그래밍 언어와 같네요 ㅎ
1
2
3
4
print( 3 == 3 )
print( 3 != 3 )
print( 3 < 3 )
print( 3 <= 3 )
이렇게 활용해볼 수 있죠
조건문
여기서 파이선언어의 특징이 나오네요. 자바에선 세미콜론으로 문장을 구분했다면 파이썬은 세미콜론을 쓰지 않기 때문에 자바보다 더 들여쓰기가 중요합니다. 앞으로 나올 다른 조건문이나 반복문에서는 콜론(:)으로 시작을 알리고 들여쓰기로 합니다.
조건이 3개 이상이라면 `if - elif - else` 구문을 사용해야 합니다.
파이썬 인터프리터는 위에서 아래 방향으로 조건을 차례로 비교합니다.
중요한 것은 조건을 충족하는 경우 들여쓰기된 코드를 실행하고 전체 `if - elif - else` 코드의 실행을 종료합니다.
1
2
3
4
5
6
7
8
9
if 조건-1 :
print("state – 1")
elif 조건-2 :
print("state – 2")
elif 조건-3 :
print("state – 3")
. . . . . . .
else :
print("state – N"
논리연산자
복잡한 “조건”을 비교하기 위해 사용합니다. and/or/not 을 사용해서 여러 조건을 비교합니다.
1
2
3
4
print(True and True)
print(True and True and False)
print(True or False)
print(not True)
이번 시간에는 여기까지 하겠습니다!
Comments powered by Disqus.