반응형
Notice
Recent Posts
Recent Comments
Link
개발은 처음이라 개발새발
.format() 함수와 operator 모듈 본문
반응형
1. format함수와 형식문자를 이용한 데이터 출력
userName = '최윤식'
userAge = 31
print('user name : {}, user age: {}'.format(userName, userAge))
#순서 바꾸기
print('user name : {1}, user age: {0}'.format(userName, userAge))
###format 함수는 {}안에 인덱스 번호를 기입해 순서를 변경할 수 있다. ###
#형식문자열
print('user name: %s' % userName)
print('user age: %d' % userAge)
print('user name: %s, user age: %d' % (userName, userAge))
##### %s: 문자열, %d: 정수, %f: 실수
2. 소수점 표현
형식 문자열에서는 소수점을 표현할때 %.2f 형태로 하지만 format 함수의 경우 {:.2f}으로 표현한다. :의 왼쪽의 경우는 해당 소수점을 적용할 특정 수치가 있으면 해당 수치의 인덱스 번호를 기입하면 된다.
pi = 3.14
print('pi: %f' % pi) --- 기본
print('pi: %.1f' % pi) --- 소수점 첫째자리까지만
print('pi: %.2f' % pi) --- 소수점 둘째자리까지만
#번외(format함수에서는 소수점 자리 표현을 어떻게 할까?
##원주율 (radius = 3, pi = 3.141592)
radius = float(input('반지름 입력: '))
pi = float(input('원주율 입력: '))
print('radius : %.1f' % radius)
print('pi : %f' % pi)
#형식 문자열로 실습
print('radius : %.1f, pi : %f\nradius: %f,
pi: %f\nradius: %.2f, pi: %.2f' % (radius,pi,radius,pi,radius,pi))
#포맷함수로 실습
print('radius : {0:.1f}, pi : {1}\nradius : {0:.6f},
pi : {1}\nradius : {0:.2f}, pi : {1:.2f}'.format(radius,pi))
3. divmod(몫, 나머지)
employee = 123
apple = 4
result = divmod(employee,apple)
print('사과를 나누어 줄 수 있는 최대 직원 수 : {}'.format(result[0]))
print('남는 사과 개수 : {}'.format(result[1]))
4. operator모듈
import operator
import random
num1 = 8
num2 = 3
#산술 연산자
print('{} + {} : {}'.format(num1,num2, operator.add(num1,num2)))
print('{} - {} : {}'.format(num1,num2, operator.sub(num1,num2)))
print('{} * {} : {}'.format(num1,num2, operator.mul(num1,num2)))
print('{} / {} : {}'.format(num1,num2, operator.truediv(num1,num2)))
print('{} % {} : {}'.format(num1,num2, operator.mod(num1,num2)))
print('{} // {} : {}'.format(num1,num2, operator.floordiv(num1,num2)))
print('{} ** {} : {}'.format(num1,num2, operator.pow(num1,num2)))
#비교 연산자
print('{} == {} : {}'.format(num1,num2, operator.eq(num1,num2)))
print('{} != {} : {}'.format(num1,num2, operator.ne(num1,num2)))
print('{} > {} : {}'.format(num1,num2, operator.gt(num1,num2)))
print('{} >= {} : {}'.format(num1,num2, operator.ge(num1,num2)))
print('{} < {} : {}'.format(num1,num2, operator.lt(num1,num2)))
print('{} <= {} : {}'.format(num1,num2, operator.le(num1,num2)))
#논리연산자
flag1= True
flag2= False
print('{} and {} : {}'.format(flag1,flag2, operator.and_(flag1,flag2)))
print('{} or {} : {}'.format(flag1,flag2, operator.or_(flag1,flag2)))
print('not {} : {}'.format(flag1, operator.not_(flag1)))
##백신접종버전2
age = int(input('나이 입력 :'))
vaccine = operator.or_(operator.lt(age,20),operator.ge(age,65))
print('age : {}, result : {}'.format(age,vaccine))
##random을 활용한 난수
rInt = random.randint(10,100)
num10 = operator.floordiv(rInt,10)
num1 = operator.mod(rInt,10)
print('난수 : {}'.format(rInt))
print('십의 자리 : {}'.format(num10))
print('일의 자리 : {}'.format(num1))
print('십의 자리는 3의 배수이다. : {}'.format(operator.mod(num10,3)==0))
print('일의 자리는 3의 배수이다. : {}'.format(operator.mod(num1,3)==0))
반응형
'파이썬' 카테고리의 다른 글
[Anaconda] 가상환경 리스트 확인하기 (0) | 2024.03.14 |
---|---|
[Anaconda] Anaconda 가상환경 생성하기 (0) | 2024.03.14 |
파이썬 열 순서 변경[python/pandas] (0) | 2022.08.15 |
[책 소개] 혼.공.파, 혼자 공부하는 파이썬 (1) | 2022.07.07 |
[Python] for문을 거꾸로 해보자! (1) | 2022.07.06 |