본문 바로가기

컴퓨터공학/파이썬 입문

[노베이스, 취준생을 위한 파이썬] - 8강 문자열, 리스트

반응형

본 강의 시리즈는 파이썬 입문 및 복습을 위한 강좌입니다. 모든 포스팅은 아래의 링크에서 확인가능합니다!


1강 - 변수와 자료형

2강 - 제어구조 ( if else 문)

3강 - 제어구조 ( for 문)

4강 - 제어구조 ( while 문)

5강 - 함수

6강 - 재귀함수

7강 - 람다 (lambda)

8강 - 문자열, 리스트

9강 - 튜플, 딕셔너리, 세트

10강 - 유용한 라이브러리

11강 - 클래스

12강 - 예외처리


벌써 8강이네요,, 요약강의이다보니 궁금하신 점들이 많을 것 같은데, 언제든지 댓글로 남겨주세요! 저도 같이 공부하고 좋을 것 같습니다. 오늘은 이걸 왜 지금꺼내나 싶은 문자열과 리스트! 입니다. 사실 앞에 예제들에서 조금씩 나왔었는데, 제대로 짚고 넘어가 볼게요!

 

문자열

먼저 문자열 입니다. 말그대로 그냥 글자들을 말하는 것이고, ' ' 안에 넣어서 표시합니다. 문자열의 각 글자글자는 인덱스라는 번호를 붙여서 접근할 수 있는데요, 아래를 한번 보시죠.

a = '안녕하세요 공부잘하시고 계시죠??'

이러한 문자열이 있을때, 첫 글자 부터 인덱스 0번으로 시작합니다. 

이런식으로요! 마이너스도 가능합니다.

-1은 맨 끝글자를 의미하고, 순차적으로 하나씩 빼시면 됩니다. 

len 함수로 글자의 개수도 구할 수 있구요, 문자열끼리 더하는것도 가능합니다!!

이런식으로 슬라이싱도 가능하구요. 인덱스 2인 '하' 부터 6에서 하나뺀 5까지 '하세요'가 출력됬네요. 공부하랍니다.. ㅎㅎ

인덱싱의 경우 대부분 첫숫자는 포함, 두번째숫자는 미포함으로 규칙을 가져갑니다. 함수마다 다르긴 하지만 대부분 그렇습니다. 하여튼 이렇게 자유자재로 쓸 수 있는데, 문자열에서 안되는 것이 있다면 요소의 값에 접근해서 바로 바꾸는게 안됩니다. 

그래서 슬라이싱을 해주고 더하는 방식으로 하시는게 좋을 것 같네요.

 

리스트

바로 리스트입니다! 파이썬의 꽃! 안쓰는곳이 없는 친구입니다. 리스트는 다음과 같이 선언합니다. 

이것도 인덱스로 접근도 되구요, 위에 언급했던것들은 다됩니다. 더하기도 되고, 마지막에 언급드렸던 요소바꾸기도 됩니다. 

이렇게! 원하는 인덱스에 새로운 값을 넣어줄 수 있어요! 많이 사용하는 함수들 몇개 짚고 넘어가겠습니다. ㅎㅎ

리스트는 이중 3중으로도 만들 수 있습니다. 리스트의 리스트의 리스트를 만들 수 있는것이죠. 어려운 것은 아니고 리스트의 원소가 원래는 정수로 했다면 원소를 리스트로 구성하는 것입니다. 다음과 같이 말이죠!

이제 2차원 배열도 만들 수 있고, 데이터를 자유자재로 이용하실 수 있습니다. 여기까지 잘 따라오셨다면 이를 응용해서 구현 문제들은 거의 다 푸실 수 있습니다! 연습문제 몇개 올려놓겠습니다.

연습문제

https://www.acmicpc.net/problem/2156

 

2156번: 포도주 시식

효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규

www.acmicpc.net

https://www.acmicpc.net/problem/2178

 

2178번: 미로 탐색

첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다.

www.acmicpc.net

 

반응형