import datetime
today = datetime.datetime.today()
print(today)
: 문자 길이를 반환하는 함수
userInput = str(input('데이터 입력: '))
print('입력한 데이터 길이: {}'.format(len(userInput)))
특정 문자열의 위치를 찾아 반환하는 함수
: 숫자 인지 확인하는 함수(숫자이면 True, 아니면 False)
import datetime
today = datetime.datetime.today()
userAge =input('나이 입력: ')
if userAge.isdigit():
afterAge = 100 - int(userAge)
myHundred = today.year + afterAge
print('{}년 {}년후에 100살 '.format(myHundred,afterAge))
else:
print('잘 못 입력하셨습니다.')
(참고)
#변수 뒤바꾸기
num1 = 10
num2 = 20
print('num1: {}, num2: {}'.format(num1,num2))
tempNum = num1
num1 = num2
num2 = tempNum
print('num1: {}, num2: {}'.format(num1,num2))
1) 몫과 나머지 활용.
#상품 가격 지불 금액을 입력하면 거스름 돈을 계산하는 프로그램을 만들어보자. 단, 거스름 돈 지폐와 동전의 개수를 최소로 하고, 1원 단위 절사한다.
money50000 = 50000; money10000 = 10000; money5000 = 5000; money1000 = 1000
money500 = 500; money100 = 100; money10 = 10;
money50000Cnt = 0; money10000Cnt = 0; money5000Cnt = 0; money1000Cnt = 0
money500Cnt = 0; money100Cnt = 0; money10Cnt = 0;
productPrice = int(input('상품 가격 입력: '))
payPrice = int(input('지불 금액: '))
if payPrice > productPrice:
changeMoney = payPrice - productPrice
changeMoney = (changeMoney // 10) * 10
print('거스름 돈: {}(원단위 절사)'.format(changeMoney))
if changeMoney > money50000:
money50000Cnt = changeMoney // money50000
changeMoney %= money50000
if changeMoney > money10000:
money10000Cnt = changeMoney // money10000
changeMoney %= money10000
if changeMoney > money5000:
money5000Cnt = changeMoney // money5000
changeMoney %= money5000
if changeMoney > money1000:
money1000Cnt = changeMoney // money1000
changeMoney %= money1000
if changeMoney > money500:
money500Cnt = changeMoney // money500
changeMoney %= money500
if changeMoney > money100:
money100Cnt = changeMoney // money100
changeMoney %= money100
if changeMoney > money10:
money10Cnt = changeMoney // money10
changeMoney %= money10
print('-'*30)
print('50,000: {}장'.format(money50000Cnt))
print('10,000: {}장'.format(money10000Cnt))
print('5,000: {}장'.format(money5000Cnt))
print('1,000: {}장'.format(money1000Cnt))
print('500: {}개'.format(money500Cnt))
print('100: {}개'.format(money100Cnt))
print('10: {}개'.format(money10Cnt))
print('-'*30)
2) format (천단위 콤마 삽입하기)
hour = int(input('시: '))
min = int(input('분: '))
sec = int(input('초: '))
print('{}초'.format(format(hour * 60 * 60 + min * 60 + sec,',')))
(참고)
print(format(11111111111, ',d')) # 1. 11,111,111,111 (정수)
print(format(11111111111, ',f')) # 2. 11,111,111,111.000000(실수)
# print(format(11111111111.2345, ',d')) # 3. Error 발생
print(format(11111111111.2345, ',f')) # 4. 11,111,111,111.2345
print(format(11111111111, ',')) # 5. 11,111,111,111
print(format(11111111111.2345, ',')) # 6. 11,111,111,111.2345
3) 복리 계산
#금리,이율,거치기간 복리 계산기
money = int(input('금액입력: '))
rate = float(input('이율 입력: '))
period = int(input('기간(년): '))
targetMoney = money
for i in range(period):
targetMoney += targetMoney * rate * 0.01
targetMoneyFormated = format(int(targetMoney),',')
print('-'*40)
print('이율: {}%'.format(rate))
print('원금: {}원'.format(format(money,',')))
print('{}년 후 금액: {}원'.format(period,targetMoneyFormated))
print('-'*40)