sys.stdin.readline

 

값을 입력받는데 기본으로 사용하는 것이 input()인데 sys.stdin.readline을 사용하는 경우도 있습니다.

알고리즘 문제에서 시간 초과가 발생할 경우 주로 이용합니다.
대량의 데이터의 반복적인 입력받는데 사용하면 성능이 향상됩니다.

 

import sys를 해주어야 합니다.

 

import sys

# 입력>>1 2 3
a=sys.stdin.readline()

# 결과>>1 2 3
#     >>
print(a)

띄어쓰기와 \n까지 포함합니다.

 

import sys

# 입력>>1 2 3
c=list(map(int, sys.stdin.readline().split(' ')))

# 결과>>[1, 2, 3]
print(c)

# 결과>><class 'list'>
print(type(c))

# 입력>>1 2 3
d=sys.stdin.readline().strip()

# 결과>>1 2 3
print(d)

# 결과>><class 'str'>
print(type(d))

# 입력>>1 2 3
e=sys.stdin.readline().split(' ')

# 결과>>['1', '2', '3\n']
print(e)

# 결과>><class 'list'>
print(type(e))

 

 

 

 replace()

 

replace()는 문자열을 다른 문자열로 바꿔주는 함수입니다.

 

replace('기존에서 변경할 문자열','새문자열')

replace()의 기본 구조입니다.

 

a='test one'
b='test one test two'

# 결과>>aast one
print(a.replace('te','aa'))

# 결과>>!es! one !es! !wo
print(b.replace('t','!'))

 

 

 split()

 

split()는 문자열을 분리해 리스트로 만들어주는 함수입니다.

 

split('기준 문자열')

split()의 기본 구조입니다.

 

a='test one'
b='test**two'

# 결과>>['test', 'one']
print(a.split())

# 결과>>['test', 'one']
print(a.split(' '))

# 결과>>['test', '', 'two']
print(b.split('*'))


split()은 공백을 기준으로 분리하고 특정 값을 기준 문자열로 원하면 ()안에 기준 문자열을 지정하면 됩니다.

 

 

 join()

 

join()은 문자열로 합쳐주는 함수입니다.
기준 문자열은 join() 앞에서 써서 사용하고 split()과 반대 개념입니다.

 

a='test one'
b=['test','two']

# 결과>>t e s t   o n e
print(' '.join(a))

# 결과>>test*two
print('*'.join(b))

 

 

lstrip()

 

lstrip()은 문자열의 왼쪽(left)에 있는 모든 공백을 삭제해주는 함수입니다.

 

a='  test  '
b='~~.test.~~'
c='~test!'

# 결과>>test  
print(a.lstrip())

# 결과>>.test.~~
print(b.lstrip('~'))

# 결과>>test!
print(c.lstrip('~!'))

()안에 삭제할 문자들을 문자열 형태로 넣으면 문자열 왼쪽(left)에 있는 해당 문자를 삭제해줍니다.

 

 

rstrip()

 

()안에 삭제할 문자들을 문자열 형태로 넣으면 문자열 오른쪽(right)에 있는 해당 문자를 삭제해줍니다.

 

a='  test  '
b='~~.test.~~'
c='~test!'

# 결과>>  test
print(a.rstrip())

# 결과>>~~.test.
print(b.rstrip('~'))

# 결과>>~test
print(c.rstrip('~!'))

()안에 삭제할 문자들을 문자열 형태로 넣으면 문자열 오른쪽(right)에 있는 해당 문자를 삭제해줍니다.

 

 

 strip()

 

strip()은 문자열의 왼쪽과 오른쪽에 있는 모든 공백을 삭제해주는 함수입니다.

 

a='  test  '
b='~~.test.~~'
c='~test!'

# 결과>>test
print(a.strip())

# 결과>>.test.
print(b.strip('~'))

# 결과>>test
print(c.strip('~!'))

()안에 삭제할 문자들을 문자열 형태로 넣으면 문자열 왼쪽과 오른쪽에 있는 해당 문자를 삭제해줍니다.

upper() 

 

upper()은 문자열을 모두 대문자로 바꿔주는 함수입니다. (기존의 대문자도 그대로 유지합니다.)

 

a='tesT'

# 결과>>TEST
print(a.upper())

 

 

 lower()

 

lower()은 문자열을 모두 소문자로 바꿔주는 함수입니다. (기존의 소문자도 그대로 유지합니다.)

 

b='TESt'

# 결과>>test
print(b.lower())

map()

 

map()은 반복 가능한 자료형을 받아 설정한 함수로 수행한 결과를 반환해주는 함수입니다.

 

map(함수,반복 가능한 자료형)

map() 함수의 기본 구조입니다.

 

a=['1','2','3','4','5']

a=list(map(int,a))

# 결과>>[1, 2, 3, 4, 5]
print(a)

b=list(map(str, range(5)))

# 결과>>['0', '1', '2', '3', '4']
print(b)

c=('1','2','3','4','5')

c=tuple(map(int,c))

# 결과>>(1, 2, 3, 4, 5)
print(c)

리스트 a의 값들을 map()함수를 이용해 str형에서 int형으로 바꿔주었습니다.

map() 함수를 이용하면 반복문을 통해 일일이 바꾸지 않고 한번에 바꿀 수 있다는 장점이 있습니다.

 

리스트 b에 range() 함수를 통해 값을 만들어주고 이를 map()함수를 이용해 str형으로 바꿔주었습니다.

 

튜플 c의 값들을 map()함수를 이용해 str형에서 int형으로 바꿔주었습니다.

ord()

 

ord()함수는 특정한 문자를 아스키 코드 값으로 바꿔줍니다.

 

# 출력>>65
print(ord('A'))

# 출력>>97
print(ord('a'))

# 출력>>49
print(ord('1'))

 

chr()

 

chr()함수는 아스키 코드 값을 문자로 변환해줍니다.

 

# 출력>>A
print(chr(65))

# 출력>>a
print(chr(97))

# 출력>>1
print(chr(49))

 

'Python > 파이썬 기초' 카테고리의 다른 글

파이썬_기초 21_upper(), lower()  (0) 2020.04.20
파이썬_기초 20_map()  (0) 2020.04.19
파이썬_기초 18_sum(), max(), min()  (0) 2020.04.17
파이썬_기초 17_주석  (0) 2020.04.11
파이썬_기초 16_논리연산자  (0) 2020.04.10

+ Recent posts