인프런 커뮤니티 질문&답변

강태우님의 프로필 이미지

작성한 질문수

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

섹션3 숫자형 1-2 강의도중 질문 드립니다.

23.01.17 13:06 작성

·

262

0

안녕하세요 비주얼 코드를 이용하여 강의를 듣고 있습니다. 강의를 보며 따라하던 도중에 형 변환도중

print(float(b))  # 정수 -> 실수
print(int(c))  # 실수 -> 정수
print(int(d))  # 실수 -> 정수
print(int(True))  # Bool -> 정수
print(float(True))  # Bool -> 정수
print(int(False))  # Bool -> 정수
print(float(False))  # Bool -> 정수
print(complex(3))  # 정수 -> 복소수
print(complex('3'))  # 문자 -> 복소수
print(complex(False))  # Bool -> 복소수

File "c:\python_basic\chapter03_01.py", line 141, in <module>

print(float(b)) # 정수 -> 실수

^^^^^^^^

TypeError: 'float' object is not callable

이 부분에서 오류가 발생했습니다 이런 오류가 발생해서 앞에 내용중

str1 = "Python"
bool = True
str2 = "Anaconda"
float = 10.0
int = 7
list = [str1, str2]
dict = {
    "name": "Machine Learning",
    "version": 2.0
}
tuple = (3, 5, 7)
set = {7, 8, 9}

# 데이터 타입 출력
print(type(str1))
print(type(bool))
print(type(str2))
print(type(bool))
print(type(float))
print(type(int))
print(type(dict))
print(type(tuple))
print(type(set))

이 부분을 제거하고 다시 실행해보니 오류가 사라졌습니다 이러한 오류가 발생하는 이유를 정확하게 알고싶습니다.

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

2023. 01. 18. 09:44

안녕하세요. 태우님.

변수 이름이 float을 지정했을 경우가 큰걸로 보여요~

전체 소스코드가 있어야 정확하게 알 것 같습니다.

 

강태우님의 프로필 이미지
강태우
질문자

2023. 01. 18. 10:39

전체코드입니다# Chapter03-1

# Chapter03-1
# 숫자형

# 파이썬 지원 자료형
'''
int : 정수
float : 실수
complex : 복소수
bool : 불린
str : 문자열(시퀀스)
list : 리스트(시퀀스)
tuple : 튜플(시퀀스)
set : 집합
dict : 사전
'''

# 데이터 타입
str1 = "Python"
bool = True
str2 = "Anaconda"
float = 10.0
int = 7
list = [str1, str2]
dict = {
    "name": "Machine Learning",
    "version": 2.0
}
tuple = (3, 5, 7)
set = {7, 8, 9}

# 데이터 타입 출력
print(type(str1))
print(type(bool))
print(type(str2))
print(type(bool))
print(type(float))
print(type(int))
print(type(dict))
print(type(tuple))
print(type(set))

# 숫자형 연산자
"""
+ 
- 
* 
/ 
// : 몫 
% : 나머지
abs(x) 
int(x) 
float(x) 
complex(x)
pow(x, y) 
x ** y : 제곱
....
"""

# 정수 선언
i = 77
i2 = -14
big_int = 999999999999999999999999999999999999999

# 정수 출력
print(i)
print(i2)
print(big_int)

# 실수 선언
f = 0.9999
f2 = 3.141592
f3 = -3.9
f4 = 3 / 9

# 실수 출력
print(f)
print(f2)
print(f3)
print(f4)

# 연산 실습
i1 = 39
i2 = 939
big_int1 = 123456789123456789012345678901234567890
big_int2 = 999999999999999999999999999999999999999
f1 = 1.234
f2 = 3.939

# +
print(">>>>> + ")
print("i1 + i2 : ", i1 + i2) 
print("f1 + f2 : ", f1 + f2) 
print("big_int1 + big_int2 : ", big_int1 + big_int2) 

# -
print(">>>>> -")
print("i1 - i2: ", i1 - i2) 
print("f1 - f2: ", f1 - f2)
print("big_int1 - big_int2: ", big_int1 - big_int2)

# *
print(">>>>> *")
print("i1 * i2: ", i1 * i2)
print("f1 * f2: ", f1 * f2)
print("big_int1 * big_int2: ", big_int1 * big_int2)

# /
print(">>>>> /")
print("i2 / i1: ", i2 / i1)
print("f2 / f1: ", f2 / f1)
print("big_int2 / big_int1: ", big_int2 / big_int1)

# //
print(">>>>> //")
print("i2 // i1: ", i2 // i1) 
print("f2 // f1: ", f2 // f1)
print("big_int2 // big_int1: ", big_int2 // big_int1)

# %
print(">>>>> %")
print("i1 % i2 :", i1 % i2)
print("f1 % f2 :", f1 % f2)
print("big_int1 % big_int2 :", big_int1 % big_int2)

# **
print(">>>>> **")
print("2 ** 3: ", 2 ** 3)
print("i1 ** i2: ", i1 ** i2) 
print("f1 ** f2: ", f1 ** f2)

# 형 변환 실습
a = 3.
b = 6
c = .7
d = 12.7

# 타입 출력
print(type(a), type(b), type(c), type(d))

# 형 변환
print(float(b))  # 정수 -> 실수
print(int(c))  # 실수 -> 정수
print(int(d))  # 실수 -> 정수
print(int(True))  # Bool -> 정수
print(float(True))  # Bool -> 정수
print(int(False))  # Bool -> 정수
print(float(False))  # Bool -> 정수
print(complex(3))  # 정수 -> 복소수
print(complex('3'))  # 문자 -> 복소수
print(complex(False))  # Bool -> 복소수

# 수치 연산 함수
print(abs(-7)) #절대값
x, y = divmod(100, 8) #몫과 나머지
print(x, y) #
print(pow(5, 3), 5 ** 3) #제곱 5의3승

#외부 모듈
import math

#ceil 올림
print(math.ceil(5.1))   # x 이상의 수 중에서 가장 작은 정수

#floor 내림

#pi
print(math.pi)