맛동산

파이썬 자료형_문자열1(문자열 선언) 본문

파이썬/기초

파이썬 자료형_문자열1(문자열 선언)

오지고지리고알파고포켓몬고 2016. 9. 28. 20:24

파이썬은 자바스크립트처럼 자료형에 대해 따로 선언할 필요가 없음.

정수, 소수에 관한건 따로 언급할 내용이 없고, 특이한게 있다면 한글로 변수 선언을 해도 알아듣는 것.

자바와 달랐던 점 위주로 작성함




우선 문자열이라는게 구조상 문자(char)의 배열형(char[임의정수])이라고 할 수 있음.


내 기억에 c에서는 이 개념을 그대로 갖고 있지만 자바에선 string으로 선언함.

(c에서 가변길이로 배열 선언을 해놓고 getc()로 받기도 했던 것 같은데 기억이 잘 나지 않는다.)


파이썬은 어떨까?

a="문자열 입니다" 라고 자료형 없이 선언해도 a[6] = {"문","자","열"," ","입","니","다"} 형태로 만들어짐.

(형태는 유사하나 내부적으로 완전 일치하진 않는 것 같음. 내가 아직 자료형에 대한 이해가 부족한걸지도.. 이유는 아래)


그리고 a에 대해 print(a[2])라고 요청하면 "열"이 출력 된다. 이런 접근 방식은 c와(문자 배열) 동일함.(string형에서는 a.indexof(2)라고 해야 한다.)


그렇다면 "열"을 "A"로 바꾸고 싶으면 어떻게 해야할까?

문자 배열 형과 동일하게 a[2]="A"?

아쉽지만 현재 진도상으로는 문자열에 있는 요소는 변경이 불가능하다고 함. a.replace("열", "A")가 있긴 하지만 "열"에 해당되는 문자가 모두 바뀜.

뭔가 다른 함수가 있을 것 같다.


지금으로선 "문자A 입니다"라는 문자열을 만들기 위해서는

b=a[0:2]+"A"+a[3:] 라고 해야함.

[0:2] [3:]은 인덱싱, 슬라이싱이라고 하는데 다음 글에 작성하겠음.

Comments