1. 숫자
종류
- int(integer) : 정수
ex) 0, 1, 273, -52
- float(floating point) : 실수(부동 소수점)
ex) 0.0, 52.273, -1.2
사칙 연산자
기본적으로 / * + - 가 있고 / 사용시 실수형으로 결과가 출력된다.
- // : 정수 나누기 연산자 => 숫자를 나누고 소수점 이하의 자리수를 버린후 정수 부분만 남긴다.
- % : 나머지 연산자
- ** : 제곱 연산자(2**3 은 8을 의미한다.)
2. 변수와 입력
변수 만들기/사용하기
pi = 3.14159265
print(pi)
변수 선언, 변수에 값을 할당, 변수 참조
C나 자바 등에서는 기본적으로 변수의 자료형을 미리 선언해 주어야 하지만 파이썬은 같은 변수에 여러 종류의 자료형을 넣을 수 있다.
사용자 입력 : input()
number = input("숫자 입력 : ")
print(number)
input 함수는 사용자가 무엇을 입력해도 결과는 무조건 문자열 자료형이다. 하지만 이 자료형을 형변환으로 바꿀 수 있다.
- int() : 문자열을 int 자료형으로 변환
- float() : 문자열을 float 자료형으로 변환
string_a = input("정수를 입력 ")
string_b = input("정수를 입력 ")
print("덧셈 결과 ",int(string_a)+int(string_b))
# 보통 입력과 동시에 한다.
string_a = int(input("정수를 입력 "))
변환할 수 없는 것을 변환 시 오류 발생 ValueError
output_a = int("52")
output_b = float("52.273")
output_c = float("안녕하세요") # 오류 발생
output_d = int("12.567") # 부동 소수점 오류 발생
숫자를 문자열로 바꾸기 : str()
문자열을 숫자로 변환하는 것처럼 숫자를 문자열로 변환하는 것도 가능하다. int() float() 형태와 비슷하다.
# str(다른 자료형)
output_a = str(52)
print(type(output_a), output_a)
# 출력
<class 'str'> 52
3. 숫자와 문자열의 다양한 기능
문자열의 format() 함수
"{}".format(10)
"{} {}".format(10,20)
string_a = "{}".format(10) # 함수로 숫자를 문자열로 변환
string_b = "{} 만원".format(5000)
name = "Mike"
print(f"my name is {name}")
- 중괄호{}를 포함한 문자열 뒤에 마침표를 찍고 format() 함수를 사용한다.
- 함수의 매개인자를 문자열 처리한다.
- 반드시 중괄호의 갯수와 format 함수 괄호 안 매개변수의 개수는 같아야 한다.
- {} 기호 대신 format 괄호 안에 있는 매개변수로 대체하는 것 뿐이기에 {}와 {} 사이에 다양한 문자열을 넣을 수 있다.
- {} 개수가 매개변수의 개수보다 많으면 IndexError 예외가 발생하지만 매개변수의 개수가 더 많은 경우에는 {} 개수만큼만 적용되고 나머지는 버려진다.
- 앞에 f를 붙이고 {} 안에 직접 대입을 통해 직관적으로 작성 가능
다양한 format() 기능
output_a = "{:d}".format(52) # 문자열처리가 아닌 정수 처리
output_b = "{:5d}".format(52) # 총 5칸을 차지하고 오른쪽에서 왼쪽으로
output_c = "{:05d}".format(52) # 총 5칸 차지하고 왼쪽에 남은 공간 0으로 채우기
output_d = "{:05d}".format(-52) # 맨 앞칸은 -부호가 차지한다. -0052
output_e = "{:+d}".format(52) # 부호화 함께 출력 +52
output_f = "{:+d}".format(-52) # 부호화 함께 출력 -52
output_g = "{: d}".format(52) # 부호부분 공백 ,, 즉, 총 3칸 차지하고 맨 앞 공백
output_h = "{: d}".format(-52) # -52 출력
output_i = "{:+5d}".format(52) # 기호 뒤로 밀기 즉, 앞 2칸 공백 이후 +52
output_j = "{:=+5d}".format(52) # 기호 앞으로 밀기, 부호만 맨 앞으로
# 부동 소수점 출력
output_k = "{:f}".format(52.273)
output_l = "{:15f}".format(52.273) # 15차지 오른쪽에서 왼쪽으로 .도 1칸차지
output_m = "{:15.2f}".format(52.273) # 15칸차지 2칸은 소수점
output_n = 52.0
output_o = "{:g}".format(output_n) # 의미없는 소수점 제거 => 52
이외에는 정수와 마찬가지
대소문자 바꾸기 : upper() lower()
a = "Hello World"
print(a.upper()) # 전부 대문자로 출력
print(a.lower()) # 전부 소문자로 출력
문자열 양옆의 공백 제거하기 : strip()
- strip() : 문자열 양옆의 공백 제거
- lstrip() : 문자열 왼쪽의 공백 제거
- rstrip() : 문자열 오른쪽의 공백 제거
input_a = """
안녕하세요
"""
print(input_a)
# 출력
(줄바꿈)
안녕하세요
(줄바꿈)
print(input_a.strip())
# 출력
안녕하세요
문자열의 구성 파악하기 : isOOO()
- isalnum() : 문자열이 알파벳 또는 숫자로만 구성되어 있는지 확인
- isalpha() : 문자열이 알파벳으로만 구성되어 있는지 확인
- isidentifier() : 문자열이 식별자로 사용할 수 있는지 확인
- isdecimal() : 문자열이 정수 형태인지 확인
- isdigit() : 문자열이 숫자로 인식될 수 있는 것인지 확인
- isspace() : 문자열이 공백으로만 구성되어 있는지 확인
- islower() : 문자열이 소문자로만 구성되어 있는지 확인
- isupper() : 문자열이 대문자로만 구성되어 있는지 확인
print("Train10".isalnum())
# 출력
True
문자열과 in 연산자
- 문자열 내부에 어떤 문자열이 있는지 확인하기 위해서 사용
- True 또는 False를 반환
print("안녕" in "안녕하세요") # True 반환
print("잘차" in "안녕하세요") # False 반환
문자열 자르기 : split()
- 문자열을 특정한 문자로 자를때 사용
- 실행결과로 리스트가 나온다.
a = "10 20 30 40".split(" ") # 공백을 기준으로 자른다.
print(a) # ['10', '20', '30', '40'] 이 출력된다.
‘혼자 공부하는 파이썬’을 읽고 공부한 내용을 바탕으로 작성하였습니다.
'Python > 혼자 공부하는 파이썬' 카테고리의 다른 글
[Python] 4-2. 딕셔너리와 반복문 (0) | 2022.10.21 |
---|---|
[Python] 4-1. 집합 자료형, 리스트와 반복문 (0) | 2022.10.21 |
[Python] 3. 조건문 (0) | 2022.10.20 |
[Python] 2-1. 자료형과 문자열 (0) | 2022.10.20 |
[Python] 1. 식별자, 주석, 출력 (0) | 2022.10.20 |