문자열 거꾸로 하는 방법은 3가지가 있다.
- 문자열 슬라이싱으로 처리하기
- 문자열을 리스트로 변환하고 reverse() 함수 사용하기
- sorted(iterable, reverse=True) 내장함수 사용하기.
리스트로 반환된다
#1.문자열 슬라이싱으로 처리
var = "abcde"
print(f"문자열뒤집기: {var[::-1]}") #edcba
#2.문자열을 리스트로 변환하고 reverse() 함수 사용하기
#리스트인 경우 reverse() 함수 제공되므로 리스트 변환 후 사용
lst = list(var)
print(f"뒤집기 전: {lst}") #뒤집기 전: ['a', 'b', 'c', 'd', 'e']
#리스트일때는 reverse() 함수 사용
lst.reverse()
print(f"뒤집기 후: {lst}") #뒤집기 후: ['e', 'd', 'c', 'b', 'a']
#문자열 변환
str = "".join(lst)
print(f"문자열변환: {str}") #문자열변환: edcba
#3.sorted() 내장함수 사용하기. 리스트로 반환.
srt = sorted(var, reverse=True)
print(f"sorted 사용: {srt}") #sorted 사용: ['e', 'd', 'c', 'b', 'a']
srts = "".join(srt)
print(f"sorted 문자열변환: {srts}") #sorted 문자열변환: edcba
▶ 문자열 reverse (거꾸로) 연습 백준 문제 풀이
https://www.acmicpc.net/problem/6438
#input 에는 여러 테스트 케이스가 들어 있습니다.
#첫 번째 줄에는 파일의 테스트 사례 수를 지정하는 정수가 들어 있습니다.
#각 테스트 사례는 최대 70자를 포함하는 단일 텍스트 줄로 구성됩니다.
#그러나 각 줄의 끝에 있는 줄바꿈 문자는 줄의 일부로 간주되지 않습니다.
#테스트 사례 수 지정 정수 입력
no = int(input())
#최대 70자를 포함하는 단일 텍스트 줄 입력
lst = [input() for _ in range(0, no)]
#문제풀이, 주어진 텍스트의 방향을 변경
for i in range(0, len(lst)):
str = lst[i]
print(str[::-1]) #문자열 슬라이싱으로 처리
▶ 문자열 슬라이싱 연습 백준 문제 풀이
https://www.acmicpc.net/problem/1251
"""
단어 : arrested
세 단어로 나누기 : ar / rest / ed
각각 뒤집기 : ra / tser / de
합치기 : ratserde
단어가 주어지면, 이렇게 만들 수 있는 단어 중에서 사전순으로 가장 앞서는 단어를 출력하는 프로그램을 작성
"""
#입력값 저장
inp = input()
#출력값 변수 선언
rtnList = []
#입력 데이터만큼 반복
for i in range(1, len(inp)-1):
for j in range(i+1, len(inp)):
fStr = inp[:i]
sStr = inp[i:j]
tStr = inp[j:]
#거꾸로 저장한다.
rtnList.append(fStr[::-1]+sStr[::-1]+tStr[::-1])
print(min(rtnList))
▷ 파이썬 자습서 참고 사이트
array — Efficient arrays of numeric values
This module defines an object type which can compactly represent an array of basic values: characters, integers, floating point numbers. Arrays are sequence types and behave very much like lists, e...
docs.python.org
Built-in Functions
The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...
docs.python.org
'코딩라이브러리 > 파이썬' 카테고리의 다른 글
파이썬 if문 조건 여러개 다중 처리 배열 비교 (with 백준 1330) (0) | 2024.05.21 |
---|---|
파이썬 문자열 formatter string (with 백준 2739) (0) | 2024.05.20 |
파이썬 정수, 실수 형변환 데이터형 확인 (0) | 2024.05.18 |
파이썬 소수점 반올림 올림 round()와 ceil() (with 백준 2033) (0) | 2024.05.17 |
파이썬 소수점 버림 trunc() floor() (with 백준 10869) (0) | 2024.05.15 |