두 변수의 값은 변경하는 방법
c = 10
d = 20
c, d = d, c
print(c, d)
# 20 10
인자 값이 여러게 일 경우 인자 값 앞에 별을 붙이면 그 인자값 안에 모두 들어가게 된다.
def magu_print(x, y, *rest):
print(x, y, rest)
magu_print(1, 2, 3, 5, 6, 7, 9, 10)
# 1 2 (3, 5, 6, 7, 9, 10)
튜플 선언
t = ('a', 'b', 'c')
# 튜플 원소가 없는 튜플을 만들때 괄호를 꼭 써주기
empty = ()
# 원소를 하나만 가진 튜플을 만들땐 원소뒤에 콤마 꼭 찍기
one = 5,
# (5,)
튜플은 리스트와 달리 원소값을 직접 바꿀수 없어 문자열에서 했던 것 처럼 오려붙이는 방법을 써야한다.
p = (1,2,3)
q = p[:1] + (5,) + p[2:]
# (1, 5, 3)
r = p[:1], 5, p[2:]
# ((1,), 5, (3,))
리스트 변환 , 튜플 변환
p = (1, 2, 3)
q = list(p) # 튜플 p로 리스트 q를 만듦
[1, 2, 3]
r = tuple(q) # 리스트 q로 튜플 r을 만듦
(1, 2, 3)
연습문제
내일 날짜 구하기 - 사용자로 부터 년 월 일 입력 받아 입력받은 날짜를 mm/dd/yyyy 형식 출력
월을 두자리 일 을 두자리 년도 네자리 숫자로 나타내며 같은 형식으로 다음날 날짜 출력 단,윤년을 무시 2월을 항상 28일로 가정
def read_date():
year, month, day = tuple(map(int, input().split()))
return year, month, day
def print_date(date):
year, month, day = date
print("%02d/%02d/%04d" % (month, day, year))
def advance_day(date):
year, month, day = date
# end_of_month = (month == 1 and day == 31) or \
# (month == 2 and day == 28) or \
# (month == 3 and day == 31) or \
# (month == 4 and day == 30) or \
# (month == 5 and day == 31) or \
# (month == 6 and day == 30) or \
# (month == 7 and day == 31) or \
# (month == 8 and day == 31) or \
# (month == 9 and day == 30) or \
# (month == 10 and day == 31) or \
# (month == 11 and day == 30) or \
# (month == 12 and day == 31)
#end_of_month = (month in [1, 3, 5, 7, 8, 10, 12] and day == 31) or \
# (month in [4, 6, 9, 11] and day == 30) or \
# (month == 2 and day == 28)
end_of_month = (month, day) in [(1, 31), (2, 28), (3, 31), (4, 30), (5,
31), (6, 30), (7, 31), (8, 31), (9, 30), (10, 31), (11, 30), (12, 31)]
end_of_year = month == 12 and day == 31
if end_of_month:
if end_of_year:
year += 1
month = 1
day = 1
else:
month += 1
day = 1
else:
day += 1
return year, month, day
if __name__ == "__main__":
today = read_date()
print_date(today)
tomorrow = advance_day(today)
print_date(tomorrow)
'PYTHON > 기본 문법' 카테고리의 다른 글
PYTHON - 딕셔너리(dict), 세트(set) (1) | 2022.11.10 |
---|---|
PYTHON - 문자열 리스트 (0) | 2022.11.10 |
PYTHON - 데이터 타입 (0) | 2022.11.08 |
PYTHON 기본 문법 (함수) (0) | 2022.11.08 |
PYTHON 기본 문법 ( for , match - case 문 ) (1) | 2022.11.08 |