본문 바로가기
Python/DataType&Structure

Text Sequence Type (str)

by youngflowey 2019. 11. 26.

Text Sequence Type (str)

  • 우리가 일반적으로 말하는 문자열

문자열 생성방법

a = "Hello"      # "" 를 이용
b = 'Hello'      # '' 를 이용
# 여러줄짜리 문자열을 만들어 사용
c = """이것은
소리없는
아우성"""
d = '''이것은
소리없는
아우성'''
print(c)

 

문자열 연산, indexing, Slicing

first = '이것은'
last = '소리없는 아우성'

# 두 문자열을 연결
result =  first + last       # 연산자 over loading
# + 연산자가 다른기능도 하게 된다 : over loading
print(result)

# 문자열의 곱
text = "python"
print(text * 3)   # 문자열을 3번 연결하는거네요

 

 

1) indexing

a = 'this is a sample text!. show me the money!'   # R의 vector라고 생각하면 돼 
                                                   # 문자열 만들면 해당 문자들이 indexing된다
    
# indexing (0부터 시작)
print(a[0])    # t
print(a[8])    # s
    # 공백도 하나의 문자이다
print(a[-1])   # -의미는 뒤부터 indexing

 

2) slicing

# slicing : 일부분을 발췌 
print(a[0:3])    # 시작은 invlusive, 마지막은 exclusive
print(a[:4])     # 시작부분이 없으면 처음부터
print(a[4:])     # 마지막이 없으면 끝까지
print(a[:])      # 처음부터 끝까지 다

 

논리연산 => in, not in 연산자 

 

a = "this is a Sample text"

print("this" in a)    # True (TRUE, T xxx)
print("this" not in a)    # False
print("sample" in a)  # False
print("sample" in a.lower())  # True

 

문자열 formatting

    # apple = 10;
    # a = "사과가 10개 있어요"
    # a = "사과가" + apple + "개 있어요"
    # print(a)
### error 문자열 숫자열 섞여 버림
apple = 10;
a = "사과가 10개 있어요"
a = "사과가" + str(apple) + "개 있어요"
print(a)
# 이렇게 할 수 있는데 너무 복잡스러워

 

b = "사과가 %d개 있어요" %apple
# %d : 숫자 지정해주지 않았지만 나중에 숫자가 들어갈거야
print(b)

 

c = "사과가 %d개, 바나나가 %d개 있어요" %(apple,9)
print(c)

 

d = "원주율은 %f입니다" %3.141592
print(d)
# 실수 float 바꿔줘야함

 

e = "이것은 소리없는 %s" %"아우성"
print(e)

 

f = "이것은 소리없는 %10s!!" %"아우성"
print(f)
#      아우성 > 전체 자리수 10칸잡고 오른쪽 정렬

f = "이것은 소리없는 %-10s!!" %"아우성"
print(f)
# 왼쪽 정렬

 

a = "원주율은 %0.4f" %3.141592
print(a)
# 소수점 4째자리 까지
# 5번째 자리에서 반올림

 

 

<문자열 함수>

문자열 길이

a = "cocacola"
# 문자열 길이
result = len(a); print(result)

8

 

count

result = a.count("c"); print(result)  # count 개수를 세는 함수
# 특정 키워드 몇번 등장하는가

3

 

find

result = a.find("o"); print(result)  # find 찾은것의 위치(index)를 알려주는 함수

1

 

문자열 연결

a = ":"
b = "abcd"
result = a.join(b); print(result);

a = ["이것은", "소리없는", "아우성"]
b = ""
result = b.join(a); print(result)

a = "hoBBy"
print(a.upper())   # 대문자
print(a.lower())   # 소문자
print(a)
print(a.strip())  # strip : 앞과 뒤의 공백을 제거

출력양식을 설정할 때  formatting을 이용

apple = 10
a = "사과가 %d개 있어요!!" %apple
print(a)
a = "나는 사과를 {0}개 가지고 있어요!".format(3)
print(a)
a = "나는 사과를 {0}개 가지고 있어요!".format("three")
print(a)
a = "나는 사과를 {0}개, 바나나 {1}개 가지고 있어요!".format(3,5)
print(a)
a = "나는 사과를 {var1}개, 바나나 {var2}개 가지고 있어요!".format(var1=3, var2=5)
print(a)
# 문자열이 가지는 함수 
# 중괄호 값에 대치

  • Numeric(정수, 실수), str

 

'Python > DataType&Structure' 카테고리의 다른 글

Mapping Type - dic(dictionary)  (0) 2019.11.26
Sequence Type - range  (0) 2019.11.26
Sequence Type - tuple  (0) 2019.11.26
Sequence Type - List  (0) 2019.11.26
Numeric Data Type  (0) 2019.11.26

댓글