코딩?

초보자인 나를 위한 파이썬(Python) 기초_파이썬 시작, 변수

km1n 2021. 12. 18. 18:37

1. sep(separation) 

 

영단어 그대로, 분리하여 출력한다. 다만 분리할 (갈라놓을 문자를 지정할 수 있다.) 이것을 구분자라고 한다.

예를 들어서 아래처럼 사용 할 수 있다.

 

print('S','E','P', sep='@')

출력 >>>>> S@E@P

S , E , P라는 문자열 사이에 @가 끼워넣어져 출력된다. 즉, 구분자는 @가 된다.

 

2. end

end옵션을 사용하면 그 뒤의 출력값과 이어서 출력한다. (즉, 줄바꿈을 하지 않게 된다.)

 

print("I like", end=" ")
print("money")

출력 >>>>> I like money

그리고, 저 end=' ' 사이에 무언가를 입력하게되면, sep와 비슷한 기능을 한다.(구분자를 사용할 수 있다)

첫번째 출력문과, 두번째 출력문 사이에 end에 넣어준 문자열이 출력된다.

 

print("I like", end=" gold and ")
print("money")

출력 >>>>> I like gold and money

3. print 탭과 줄바꿈

print("안녕하세요.\n만나서\t\t반갑습니다.")

\t는 탭을 의미하고 \n'은 줄바꿈을 의미한다.

 

4. 변수 사용하기

다음 표는 삼성전자의 일부 투자정보입니다. 변수를 사용해서 시가총액, 현재가, PER 등을 바인딩해보세요.

항목값
시가총액 298조
현재가 50,000원
PER 15.79
정답확인
시가총액 = 298000000000000
현재가 = 5000
PER = 15.79
print(시가총액, type(시가총액))
print(현재가, type(현재가))
print(PER, type(PER))

5. type함수

 

type() 함수는 데이터 타입을 판별합니다. 변수 a에는 128 숫자가 바인딩돼 있어 type 함수가 int (정수)형임을 알려줍니다.

>> a = 128
>> print (type(a))
<class 'int'>

아래 변수에 바인딩된 값의 타입을 판별해보세요.

>> a = "132"

4번의 시가총액과 현재가는 int로 분류될 겁니다.

반면 PER은 소수점이 있는 숫자니까 float로 분류됩니다. 

 

6.형변환

실수로 변환하는 float, 정수로 변환 하는 int, 문자열로 변환하는 str, 문자로 변환하는 chr 그리고 불리언 타입으로 변환하는 bool 까지 이렇게 6가지 타입 변환타입이 있다.

1. 파이썬 정수 변환 - int()
2. 파이썬 실수 변환 - float()
3. 파이썬 문자열 변환 - str()
4. 파이썬 문자 변환 - chr()
5. 파이썬 불리언 변환 - bool()


 

예>문자열을 정수로 변환 

문자열 '720'를 정수형으로 변환해보세요.

>> num_str = "720"
num_str = "720"  #형변환
num_int = int(num_str)
print(num_int+1, type(num_int))

 

7. 문자열 인덱싱

lang = '---'

print(lang[0], lang[3])

 

예 > letters가 바인딩하는 문자열에서 첫번째와 세번째 문자를 출력하세요.

>> letters = 'python'
실행 예
p t

파이썬 문자열에서 한 글자를 가져오는 것을 인덱싱이라고 부릅니다. 파이썬 인덱싱은 0부터 시작합니다.

lang = 'python'
print(lang[0], lang[2])

8. 문자열 슬라이싱

자동차 번호가 다음과 같을 때 뒤에 4자리만 출력하세요.

>> license_plate = "24가 2210"
실행 예: 2210

문자열에서 여러 글자를 가져오는 것을 슬라이싱이라고 부릅니다. 음수 값은 문자열의 뒤에서부터 인덱싱 또는 슬라이싱함을 의미합니다.

 

슬라이싱에서 시작 인덱스를 생락하면 0으로 간주하고 끝 인덱스를 생략하면 문자열의 끝을 의미합니다.

 

[:] 처음부터 끝까지

[a:] a 오프셋부터 끝까지

[:b] 처음부터 b-1 오프셋까지

[a:b] a 오프셋부터 b-1 오프셋까지

[a:b:c] c만큼 문자를 건너뛰면서, a 오프셋부터 b-1 오프셋까지

 

license_plate = "24가 2210"
print(license_plate[-4:])

 

9. 문자열 인덱싱

아래의 문자열에서 '홀' 만 출력하세요.

>> string = "홀짝홀짝홀짝"
실행 예:
홀홀홀

슬라이싱할 때 시작인덱스:끝인덱스:오프셋을 지정할 수 있습니다.

string = "홀짝홀짝홀짝"
print(string[::2])

 

 

10. replace()

string.replace(searchValue, newValue)

replace() 함수는 searchValue, newValue를 파라미터로 입력받고

문자열에서 searchValue를 찾아서 newValue로 치환합니다.

 

예>

실행 예
01011112222
phone_number = "010-1111-2222"
phone_number1 = phone_number.replace('-', '')
print(phone_number1)

 

11. 문자열 다루기

url 에 저장된 웹 페이지 주소에서 도메인을 출력하세요.

>> url = "http://sharebook.kr"
실행 예:
kr

문자열로 표현된 url에서 .을 기준으로 분리합니다. 분리된 url 중 마지막을 인덱싱하면 도메인만 출력할 수 있습니다.

url = "http://sharebook.kr"
url_split = url.split('.')
print(url_split[-1])

 

12. 문자열 출력

변수에 다음과 같이 문자열과 정수가 바인딩되어 있을 때 % formatting을 사용해서 다음과 같이 출력해보세요.

name1 = "김민수" 
age1 = 10
name2 = "이철희"
age2 = 13
이름: 김민수 나이: 10
이름: 이철희 나이: 13

print 포맷팅에서 %s는 문자열 데이터 타입의 값을 %d는 정수형 데이터 타입 값의 출력을 의미합니다.

name1 = "김민수" 
age1 = 10
name2 = "이철희"
age2 = 13
print("이름: %s 나이: %d" % (name1, age1))
print("이름: %s 나이: %d" % (name2, age2))

 

13.  strip 메서드

문자열의 좌우의 공백이 있을 때 이를 제거해보세요.

data = "   삼성전자    "
정답확인

문자열에서 strip( ) 메서드를 사용하면 좌우의 공백을 제거할 수 있습니다. 이때 원본 문자열은 그대로 유지되고 공백이 제거된 새로운 문자열이 반환됩니다.

data = "   삼성전자    "
data1 = data.strip()
print(data1)
 

14. endswith 메서드

파일 이름이 문자열로 저장되어 있을 때 endswith 메서드를 사용해서 파일 이름이 'xlsx'로 끝나는지 확인해보세요.

file_name = "보고서.xlsx"
file_name = "보고서.xlsx"
file_name.endswith("xlsx")

 

15. rstrip 메서드

문자열의 오른쪽에 공백이 있을 때 이를 제거해보세요.

data = "039490     "

rstrip() 메서드를 사용하면 오른쪽 공백이 제거된 새로운 문자열 객체가 반환됩니다. 그 값을 data라는 변수가 새로 바인딩합니다. 기존의 공백이 포함된 문자열은 메모리에서 자동으로 삭제됩니다.

data = "039490     "
data = data.rstrip()
"039490     "
"039490"
data

 

16. Join, Split 리스트를 문자열로, 문자열을 리스트로 변환

파이썬에 내장되어 있는 함수 join, split을 이용해 문자열(String)을 리스트(List)로 변환하는 방법입니다. 
Join 함수는 리스트를 특정 구분자를 포함해 문자열로 변환해 주는 함수입니다. 
Split함수는 문자열을 특정 구분자를 기준으로 나누어 리스트로 변환해 주는 함수입니다.

 

-리스트(List)를 특정 구분자를 포함해 문자열(String)으로 변환

animals = ['사자', '코끼리', '기린', '원숭이', '바나나원숭이']

print ",".join(animals)
# >> 사자,코끼리,기린,원숭이,바나나원숭이 

print "\n".join(animals)
# >> 사자
# >> 코끼리 
# >> 기린 
# >> 원숭이
# >> 바나나원숭이

print "/".join(animals)
# >> 사자/코끼리/기린/원숭이/바나나원숭이

-문자열(String)을 특정 '구분자'를 기준으로 리스트(List) 로 변환

animal_string = "/".join(animals)
# >> 사자/코끼리/기린/원숭이/바나나원숭이

animal_split = animal_string.split("/")
print animal_split
# >> ["사자", "코끼리", "기린", "원숭이", "바나나원숭이"]