일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 토네이도
- online
- spring
- 이클립스
- 오픈한글
- 연동
- ubuntu
- OrientDB
- 프레임워크
- BAEKJOON
- Java
- r script
- Tornado
- mariadb
- Framework
- AWS
- Python
- 백준
- MongoDB
- 알고리즘
- r
- 설치
- 파이썬
- 자료형
- Judge
- API
- 저지
- 배열
- 연결
- 자바스크립트
- Today
- Total
맛동산
파이썬 자료형_문자열1(문자열 선언) 본문
파이썬은 자바스크립트처럼 자료형에 대해 따로 선언할 필요가 없음.
정수, 소수에 관한건 따로 언급할 내용이 없고, 특이한게 있다면 한글로 변수 선언을 해도 알아듣는 것.
자바와 달랐던 점 위주로 작성함
우선 문자열이라는게 구조상 문자(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:]은 인덱싱, 슬라이싱이라고 하는데 다음 글에 작성하겠음.
'파이썬 > 기초' 카테고리의 다른 글
파이썬 자료형_딕셔너리 (0) | 2016.10.06 |
---|---|
파이썬 자료형_튜플 (0) | 2016.10.03 |
파이썬 자료형_리스트 (0) | 2016.10.03 |
파이썬 자료형_문자열3(문자열 포매팅) (0) | 2016.09.28 |
파이썬 자료형_문자열2(인덱싱, 슬라이싱) (0) | 2016.09.28 |