일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- python practice
- Attention
- sentence embedding
- overfitting
- pytorch
- neural net
- Self-loop attention
- word2vec
- NLP
- Transformer
- Python
- deep learning
- machine learning
- Classificaion
- abstraction
- Set Transformer
- elif
- sigmoid
- GNN
- XOR
- Today
- Total
Research Notes
[Python] Data Type: Integer, Float, String, and Formatting 본문
[Python] Data Type: Integer, Float, String, and Formatting
jiachoi 2023. 7. 3. 15:46Python의 자료형은 여러 종류로 이뤄져있다.
▶ 숫자형
- 정수(Integer) , ex) -1, 0, 2 ...
- 소수(Floating Point), ex) 2.0 , -3.5 ...
▶ 문자형
- ex) "hello" , "world" , "2"
- ex) "2" + "5" = "25"
▶ 불린
- True와 False만 값으로 가진다.
▶ 리스트, 사전, 튜플 등... 이 있다.
1. 숫자형
연산 부호 (Operators)
연산자
|
뜻
|
+
|
덧셈 (addition)
|
-
|
뺄셈 (subtraction)
|
*
|
곱셈 (multiplication)
|
/
|
나눗셈 (division)
|
%
|
나머지 (modulo)
|
**
|
거듭제곱 (exponentiation)
|
print(2 - 4) # 2 빼기 4
print(5 * 3) # 5 곱하기 3
print(7 % 3) # 7을 3으로 나눈 나머지
print(2 ** 3) # 2의 3제곱
print(2 + 3 * 2) # 덧셈보다 곱셈을 먼저 계산
print(2 * (2 + 3)) # 괄호안의 수식을 먼저 계산
# Answer
11
-2
15
1
8
8
10
※ 정수형과 정수형 연산 = 정수형
소수형과 소수형 연산 = 소수형
정수형과 소수형 연산 = 소수형
(단, 나눗셈은 정수형끼리만 연산을 하더라도 모든 결과값이 소수형으로 나온다.)
2. 문자형
문자열이란 ? 키보드로 입력할 수 있는 글자들을 표현하는 자료형.
문자열 사용방법 => '' 또는 "" 사용하여 표현. 작은따옴표와 큰따옴표를 혼용하여 사용은 불가
(공백을 주고싶으면 따옴표 안에서 공백을 표시하면 된다. )
# 자료형
# 문자열 예시
print(3+7) # 숫자형끼리의 덧셈
print("3"+"7") # 큰따옴표 안에 있는 것이 문자형으로 인식되어 문자끼리 연결
print(2 * 3) # 숫자형의 곱셈 / 2 * 3 = 2+2+2 = 6
print("Hello" * 3) # 문자형의 곱셈 / "Hello" * 3 = Hello + Hello + Hello = HelloHelloHello
# Answer
10
37
6
HelloHelloHello
※ 잘못된 문자열 사용 예시
#잘못된 문자열 사용
print('I'm a doctor')
문자열을 엮는 것으로 작은 따옴표를 사용하였으나 문자열로 'I' 까지만 인식해 오류가 발생하였다.
이런 경우에는 큰따옴표로
print ( " I'm a docter" ) 해야 오류가 나지 않는다. (문자열 안에있는 따옴표와 구분할것!)
3. 형변환(Type Casting / Type Conversion)
# 숫자형 -> 숫자형
1) 소수형에서 정수형으로 변환
int사용, int = integer (정수) 라는 뜻이면 이는 정수형으로 변환을 하게 한다.
2) 정수형에서 소수형으로 변환
float사용, float = floating point(소수)이며, 이는 소수형으로 변환을 하게 한다.
# 소수형에서 정수형으로의 변환
print(int(3.8)) # 결과 = 3
# 정수형에서 소수형으로의 변환
print(float(2)) # 결과 = 2.0
# 문자형 -> 숫자형
print(int("2") + int("5")) # 2+5 = 7
# 숫자형 -> 문자형
str 사용 , str = string(문자형) 이라는 의미이며 문자형으로 변환
str값과 int값은 연결될 수 없음!!
print(str(2)+str(5)) # 문자형 2와 문자형 5를 더한 결과값 = "25"가 출력됨
print("저는" + 20 + "살입니다.") #오류 = str값과 int값은 연결될 수 없음!!
# => int값인 20을 str값으로 변환해야함 , str(20)으로
print("저는 " + str(20) + "살입니다.") # 저는 20살입니다. 가 출력됨
# 형변환 주의사항 (모든경우에 사용할수 있는것은 아니다.)
print(int("Hello World!")) # Error
형변환을 할때는 논리적으로 변환이 될지 생각을 하고 해야한다.
위의 예시를 보면 "Hello World"라는 문자형이 int 값으로 변환될 수는 없으므로 오류가 난다
4. 문자열 포맷팅
형 변환과 문자열 덧셈 연산만 갖고는 코드가 길고 복잡해진다.
하지만 문자열 포맷팅(String Formatting)을 사용하면 훨씬 간결한 코드를 작성할 수 있다.
- 문자열 포맷팅 형식
print("%d년 %d월 %d일 %s요일 입니다." %( 2019, 3, 19, "월") )
노랑색 - 포맷팅 형식 지정
빨강색 - 포맷 형식에 맞는 자료형 입력 ( %( ) 안에 입력 )
%d, %d, %d, %s에 들어갈 숫자와 정수 순서대로 입력
- 문자열 포맷 코드
코드
|
자료형
|
%d
|
정수(Integer)
|
%f
|
소수(Floating point)
|
%s
|
문자열(String)
|
# 문자혈 포맷팅 예제
year = 2019
month = 3
day = 19
day_of_month = "월"
# 형변환만을 사용하여 오늘 날짜를 출력한 경우
print("오늘은 " + str(year) + "년 " + str(month)+ "월 " + str(day) + "일 " + day_of_month + "요일 입니다." )
# 문자열 포맷팅 사용한 경우
print("오늘은 %d년 %d월 %d일 %s요일 입니다." %(year, month, day, day_of_month))
# 오늘 날짜에 하루를 더하고 싶은경우
print("오늘은 %d년 %d월 %d일 %s요일 입니다." %(year, month, day+1, "화"))
- 소수점 포맷팅 예제
# 소수점 포맷팅 예제
print("1 나누기 3은 %f" %(1/3))
print("1 나누기 3은 %.2f" %(1/3)) # %.2f : 소수점 2자리까지 나타내라
print("1 나누기 3은 %.4f" %(1/3)) # %.4f : 소수점 4자리까지 나타내라
'Programming Language > Python' 카테고리의 다른 글
[Python] Abstraction - Variable, Function (0) | 2023.07.03 |
---|---|
[Python] Data Type: Boolean, Type Function (0) | 2023.07.03 |
[Python] Python Installation in Mac OS (0) | 2023.07.03 |
[Solved] IndexError: invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python number (0) | 2022.09.22 |
[Python] Virtual Environment Generation Reference (0) | 2022.08.04 |