프로그래밍/파이썬🐍

(1)점프 투 파이썬_[:2-2문자열자료형]

개발자 덕구🐾 2022. 1. 7. 18:10
728x90

연산과 문자열 

a = 4.24E10 은

4.24 * 10^10을 의미한다. 

 

a = 4.24e-10은

4.24 * 10^(-10) 을 의미한다.

 

 

X^Y (제곱)을 하고 싶다면?

X**Y 

 

// 는 소수점 아래자리를 버리는 연산자이다. 

 

 

문자열을 만드려면 (') 작은따옴표, (") 큰따옴표를 이용하거나

큰따옴표를 3개 이용하거나 작은따옴표를 3개이용하는 방법이 있다. 

 

이렇게 방법이 많은 이유는 문장 안에 작은따옴표나 큰따옴표가 필요할 경우가 있기 때문이다. 

 

 

줄바꿈을 하고 싶을때

hi = '''
    hi i am
    python'''
print(hi)

''' 또는 """ 또는 \n을 이용한다. (3개씩)

 

파이썬은 문자열 연산이 가능하다.

+ 는 두 문자열을 더해주고, * 는 두 문자열을 반복해준다. 

그리고 프린트 호출할 때마다 자동으로 줄바꿈을 해준다. 

 

 

 

문자열 인덱싱

 

인덱스에 음수가 들어갈 수 있다. 

예를 들어 a = 'python is cool'일때 

a[-1] 은 l이다. 

a[-0] == a[0] 이기에 a[ -1]이 가장 마지막 글자인것이다. 

 

이렇게 뒤에서부터 읽는다. 

예) a[-4] = c이다. 

 

 

문자열 슬라이싱 

a = 'python is cool'

print(a[0:6])

출력은 python이다. 

 

a[시작번호 : 끝 번호] 를 지정하면 

시작번호 <= a < 끝 번호 이다. 

끝번호는 포함하지 않는다. 

 

끝번호가 없다면 시작번호부터 문자열의 끝까지 뽑는다. 

시작번호가 없다면 문자열의 처음부터 끝 번호까지 뽑는다. 

 

 

 

a = 'pithon is cool'
a[1] = 'y'
print(a)

이렇게 바꾸려고 하면 에러가 발생한다.

문자열, 튜플 등의 자료형의 요소는 바꿀 수 있는 값이 아니기 때문이다.

그래서 바꾸고 싶다면

a = 'pithon is cool'
b = a[:1]
c = a[2:]
print(b + 'y' + c)

 

 

문자열 포매팅

print("i eat apple %d" % 3)


print("i eat %s apple" % "red")

여기서 %d, %s를 문자열 포멧코드라고 한다. 

 

 

2개 이상 쓰고 싶다면?

 

print("i eat %d %s apple" % (3,"red"))

 

%d, %c, %s, %f 등 여러개가 있지만 

%s를 쓰면 자동으로 % 뒤에 있는 값을 문자열로 바꾸기에 이런 것을 생각하지않아도 된다.

 

 

 

정렬, 소수점 표현

 

print("%10s" % "hi")

전체 길이가 10인 문자열 공간에서 hi를 오른쪽으로 정렬하고 그 앞에 나머지는 공백으로 남겨두어라 라는 코드이다.

%s 에서 그 사이에 10으로 문자열 공간의 크기를 알려준것이다. 

 

print("%0.2f" % 3.141592)

f는 소수를 의미하고 소수점 2번째자리 까지만 출력되므로 3.14가 출력된다. 

 

 

print( "{0} is cool" .format("python"))

-> 이렇게 해도 된다.

 

 

문자열 관련 함수들

 

a = "hobby"
print(a.count('b'))

count는 괄호 안의 문자의 개수를 반환한다. 

 

find는 처음 나온 위치를 반환, 없으면 -1 

index와 유사하나 index는 없으면 오류를 발생시킨다.

 

join  

a = ' '
print(a.join('himynameis'))

a 값이 각각의 문자 사이에 들어간다. 

 

upper, lower -> 각각 대문자로, 소문자로 바꾼다. 

 

replace 

 

a = "python is cool"
print( a.replace("python", "c++"))

c++ is cool으로 출력된다. 

 

 

split

a = "python is cool"
print(a.split())

split 의 괄호에 있는 값을 구분자 (여기서는 공백)로 값 하나씩 리스트에 넣는다.

 

 

반응형