본문 바로가기

Python

[Python] 10

내장함수(Built-in Function)

- Python을 설치하면 자동으로 제공되는 함수

- import가 필요없음(ex. print)

1. eval(문자열)

- 문자열을 입력받아 문자열을 실행한 결과값을 돌려주는 함수

(ex) eval('1+1') => 2 → '1+1' => '1+1'

2. format(값, 포맷)

- str.format과는 다른함수

- 값을 포맷에 맞추어 편집한 문자열을 돌려주는 함수, 포맷을 생략하면 그냥 값

(ex) format(34567, ' '개) => 34, 567

3. str(), int(), float()

- str() : 문자로 변환. 문자열에 숫자를 더해서 문자열을 만들어야 할 때 주로 사용

- int() : 정수로 변환. (주로 화면에서) 입력받은 숫자는 숫자로 보여도 문자이기 때문에 연산 불가

- float() : 실수로 변환. int와 유사

4. divmod()

- 몫과 나머지를 한꺼번에 구해주는 함수

(ex) divmod(10, 3) => (3, 1) → Tuple

5. min(), max()

- 입력받은 값 중 최소값, 최대값을 구해주는 함수


실습(define)

- define : 함수 정의 exp를 입력받아 출력

def printExp(exp):
    print(exp + " => {}".format(eval(exp)))
    
def cprintTitle(str):
    col = rd.randint(0, 256)
    print('\033[38;5;{}m'.format(col) + '#' * 40)
    print(str + END)

실습(내장함수)

※ 위의 printExp(exp), cprintTitle(str) 사용

import myutils as mu

 

※ cprintTitle(str)

mu.cprintTitle('Built-in Fuction')

 

결과

 

 

1.eval()

print('eval("1+1") => {}'.format(eval('1+1')))
mu.printExp('200+500')

 

결과

 

 

2. format()

mu.printExp('format(34567, ",")')
mu.printExp('format(34567, "_")')
mu.printExp('format("꽥꽥꽥꽥꽥", "비<20")')
mu.printExp('format("꽥꽥꽥꽥꽥", "비>20")')
mu.printExp('format(1234, "0>10")')
mu.printExp('format(1234, "0>+10")')
mu.printExp('format(1234, "<10")')

 

결과

 

3. str(), float(), int()

(1) str()

print("str() : " + str(47) + "명이 출석 중")

 

결과

(2) float()

print("10을 float를 씌우면 " + str(float(10)))

 

결과

(3) int()

print("10.9를 int를 씌우면 " + str(int(10.9)))

 

결과

 

 

4. divmod()

mu.printExp('divmod(10, 3)')

a = divmod(10, 3)
print(a)
print(a[0]) # 몫만 출력
print(a[1]) # 나머지만 출력

 

결과

※ 오류 발생 : 값을 할당할 수 없다.

a[1] = 5
print(a[1])

 

5. min(), max()

(1) min()

c = [1, 2, 3, 4, 5]
print(min(c))
mu.printExp('min([1, 2, 3, 4, 5])')
print(min(["1", "2", "3"])) # 문자끼리 비교 가능하다.
print(min(c) == min(["1", "2", "3"])) # 문자와 숫자는 같지 않다.
print(type(min(c)), type(min(["1", "2", "3"]))) # type 비교

 

결과

(2) max()

print(max(1, 2, 3))

g = [[10000, 200, 300], [10000, 500, 60000]]
print(max(g))

 

결과

※ 오류 발생 : 문자와 숫자를 비교할 수 없다.

mu.printExp('min([1, 2, "3", 4, 5])')

'Python' 카테고리의 다른 글

[Python] 12  (0) 2021.12.01
[Python] 11  (0) 2021.11.28
[Python] 09  (0) 2021.11.24
[Python] 08  (0) 2021.11.23
[Python] 07  (0) 2021.11.21