Python 공백없이 입력받아 list만들기: strip(), rstrip(), lstrip() 사용법
2021. 4. 9. 01:30ㆍdev
공백이 포함된 정수형 리스트를 입력받을 때는 split()으로 구분하면 되었는데, 공백없이 연속으로 입력받는 경우에 단순히 split()을 사용하지 않았더니 오류가 났다.
문제 예시
예제) 정수 N을 입력받아 거꾸로 출력하는 프로그램을 작성하시오
입력 예시) 123456
출력 예시) 654321
import sys
data = list(map(int,sys.stdin.readline()))
for _ in range(len(data)):
print(data.pop(), end='')
readline()은 한줄씩(라인단위로) 읽어오는 함수이기 때문에 끝에 개행문자 \n이 포함되어 있다
따라서 list에 원하지 않는 개행문자가 들어가서 에러가 난것이다.
수정한 코드는 다음과 같다.
import sys
data = list(map(int,sys.stdin.readline().rstrip()))
for _ in range(len(data)):
print(data.pop(), end='')
오른쪽 끝의 개행문자를 제거하기 위해 rstrip() 함수를 사용해주었다.
공백 제거함수
문자열에서 공백을 제거하는 함수들은 크게 세가지이다.
- lstrip: 문자열에 왼쪽 공백이나, 인자가된 문자열의 모든 조합을 제거
- rstrip: 문자열에 오른쪽 공백이나, 인자가된 문자열의 모든 조합을 제거
- strip: 양쪽 문자열에 공백이나, 인자가된 문자열의 모든 조합을 제거
print(' test1'.lstrip())
-------------------------
test1
print('test1'.lstrip('te'))
-------------------------
st1
print('test2 '.rstrip())
-------------------------
test2
print('test2'.rstrip('t2'))
-------------------------
tes
print(' test3 '.strip())
-------------------------
test3
print('test3'.strip('t3'))
-------------------------
es
'dev' 카테고리의 다른 글
웹 크롤링 간단예제 | Beautiful Soup 사용법 (0) | 2021.04.18 |
---|---|
Web 기본 지식 (0) | 2021.04.15 |
티스토리 코드블럭 커스터마이징, 폰트 변경방법 (0) | 2021.02.24 |
Local 프로젝트 GitHub에 올릴때 명령어 정리 (0) | 2021.01.23 |
[Spring] MyBatis 연동 및 설정방법 (0) | 2021.01.21 |