Python/Python Concept

[Python] 문자열 함수

군우 2018. 1. 7. 16:06

문자 갯수 :  count()


a="123453333"

a.count('3')


a="123453333"

print(a.count('3'))


-----------------------------------------

위치 알려주기: find()

a = "find1234567"

print(a.find('1'))

print(a.find('0'))


=

4

-1

# '1' 이 가장먼저 나온 위치를 알려주는 함수

# 문자열에 존재하지 않을 경우 -1을 리턴한다.


-----------------------------------------

위치 알려주기: index()

a = "Marry chrismas"

# print(a.index('t')) # t의 위치 리턴, 존재하지 않으면 에러가 발생한다.

print(a.index('a')) # t의 위치 리턴, 2개 존재하지만 제일 처음 나온위치정보


-----------------------------------------

문자열 삽입: join()

a = "Marry chrismas"

print(a.join('@@@@'))

=

@Marry chrismas@Marry chrismas@Marry chrismas@

# a에 있는 문자의 사이 사이에 넣는 것이 아니고,  join안의 각 문자의 사이에 넣는다!

-----------------------------------------

문자 대문자로 바꾸기: upper()

a = "Marry chrismas"

print(a.upper())

MARRY CHRISMAS


-----------------------------------------
문자 소문자로 바꾸기: lower()
a = "Marry chrismas"
print(a.lower())
marry chrismas

-----------------------------------------
왼쪽 공백지우기: lstrip()
오른쪽 공백지우기: rstrip()
양쪽 공백지우기 : strip()

#1
a = "           Marry chrismas            "
print(a.lstrip())

#2
a = "           Marry chrismas"
print(a.rstrip())

#3
a = "           Marry chrismas            "
print(a.strip())

=
Marry chrismas            
           Marry chrismas
Marry chrismas

-----------------------------------------
문자열 바꾸기 : replacep()
a = "Marry chrismas"
print(a.replace('chrismas','hi'))
=
Marry hi
# replace("바꿀 문자열","바꾼 후 문자열")

-----------------------------------------
문자열 나누기 : split()

#1
a = "Marry chrismas"
print(a.split())
=
['Marry', 'chrismas']
# split(),  괄호 안에 아무 것도 없을경우 공백을 기준으로 나뉜다.

#2
a = "Marry chrismas"
print(a.split('r'))
=
['Ma', '', 'y ch', 'ismas']
# split('r') 괄호안의 문자를 기준으로 나눈다.
  이때 그 문자는 기준으로 없어지는 것 같다.

-----------------------------------------
문자 포매팅 : format()

#1
print("123{}567".format('4'))
=
1234

#2
print("123{}567".format(4))
print("123{0}567{1}9".format('4','8'))
print("123{0}567{0}9".format('4','8'))
=
1234567
123456789
123456749
# .format 을 이용하면 바로 대입할 수 있다.
   {} 안의 수는 format 안의 대입할 자리 수를 의미 한다

#3
print("123{number}567{num2}9".format(number =4, num2=8))
print("123{number}567{num2}9{num3}".format(number =4, num2 = 8,num3=10))

print("123{0}567{num2}9{num3}".format(4, num2 = 8, num3 = 10)) #이건되는데
print("123{0}567{1}9{2}".format(4,  8, 10)) #이건 됨
#print("123{0}567{num2}9{2}".format(4, num2 = 8, 10)) #이건 안됨
=
123456789
12345678910
12345678910
12345678910

#4     정렬
print("{0:<10}".format("1"))  # < 왼쪽 정렬
print("{0:>10}".format("1"))  # > 오른쪽 정렬
print("{0:^10}".format("1"))  # ^ 가운데 정렬
print("{0:=^10}".format("1")) # ^ 공백채우기  ^ 전에 문자를  빈곳에 채운다
print("{0:0.4f}".format(3.1415921212)) # 소수점 표현
=
1         
         1
    1     
====1=====
-----------------------------------------
정리!

replace()
split()
rstrip()
lstrip()
strip()
index()
join()
upper()
lower()
find()
count()
format()


-----------------------------------------
-----------------------------------------