6308. 100세가 되는 해
6308. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 1
문제
다음의 결과와 같이 이름과 나이를 입력 받아
올해를 기준으로 100세가 되는 해를 표시하는 코드를 작성하십시오.
입력
홍길동
20
출력
홍길동(은)는 2099년에 100세가 될 것입니다.
name = input()
age = int(input())
year_100 = 2019 + 100 - age # 올해는 2021년이지만 pass하려면..
print("{0}(은)는 {1}년에 100세가 될 것입니다.".format(name, year_100))
6311. 알파벳 점수
6311. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 4
문제
"ADCBBBBCABBCBDACBDCAACDDDCAABABDBCBCBDBDBDDABBAAAAAAADADBDBCBDABADCADC"와
같은 문자열이 주어지고, A는 4점, B는 3점, C는 2점, D는 1점이라고 할 때 문자열에 사용된
알파벳 점수의 총합을 map 함수와 람다식을 이용해 구하십시오.
(출처 : https://swexpertacademy.com/)
출력
184
data = "ADCBBBBCABBCBDACBDCAACDDDCAABABDBCBCBDBDBDDABBAAAAAAADADBDBCBDABADCADC"
print(sum(list(map(lambda x: ord('E') - ord(x), data))))
6312. 예외 처리
6312. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 5
문제
가변형 인자로 정수들을 입력받아 곱을 반환하는 함수를 정의하고,
단, 1, 2, '4', 3와 같이 제대로 입력되지 않은 경우 예외를 처리하는 프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
에러발생
def multiply(*arg):
result = 1
for i in arg:
if type(i) != int:
return "에러발생"
else:
result *= i
return result
print(multiply(1, 2, '4', 3))
6313. 문자 확인
6313. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 6
문제
ASCII 코드 값를 입력받아 문자를 확인하는 코드를 작성하십시오.
(출처 : https://swexpertacademy.com/)
입력
65
출력
ASCII 65 => A
T = int(input())
print("ASCII {0} => {1}".format(T, chr(T)))
6314. 짝수
6314. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 7
문제
1~10까지의 정수를 항목으로 갖는 리스트 객체에서 filter 함수와 람다식을 이용해
짝수만을 선택해 리스트를 반환하는 프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
[2, 4, 6, 8, 10]
print(list(filter(lambda x: x % 2 == 0, list(range(1, 11))))) # 한줄컷
6315. 제곱
6315. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 8
문제
1~10까지의 정수를 항목으로 갖는 리스트 객체에서 map 함수와 람다식을 이용해
항목의 제곱 값을 갖는 리스트를 반환하는 프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
print(list(map(lambda x: x * x, list(range(1, 11))))) # 한줄컷
6316. 짝수 / 제곱
6316. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 9
문제
1~10까지의 정수를 항목으로 갖는 리스트 객체에서 filter 함수와 람다식을 이용해
짝수만을 선택한 후, map 함수와 람다식을 이용해 항목의 제곱 값을 갖는 리스트를 반환하는
프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
[4, 16, 36, 64, 100]
print(list(map(lambda x: x * x, list(filter(lambda x: x % 2 == 0, list(range(1, 11))))))) # 한줄컷
6317. 가장 큰 값
6317. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 10
문제
가변형 인자를 전달 받아 가장 큰 값을 반환하는 함수를 정의하고
다음과 같은 결과를 출력하는 프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
max(3, 5, 4, 1, 8, 10, 2) => 10
처음에 이렇게 풀었는데
def max(*arg): # max함수 내장으로 있지만 정의하래서
max_value = arg[0]
for i in range(1, len(arg)):
if max_value < arg[i]:
max_value = arg[i]
return max_value
expr = "max(3, 5, 4, 1, 8, 10, 2)"
print("{0} => {1}".format(expr, eval(expr)))
eval이 허용하지 않는 라이브러리라고 함 ㅂㄷㅂㄷ
그래서 그냥 이렇게 품
def max(*arg):
max_value = arg[0]
for i in range(1, len(arg)):
if max_value < arg[i]:
max_value = arg[i]
return max_value
print("max(3, 5, 4, 1, 8, 10, 2) => {0}".format(max(3, 5, 4, 1, 8, 10, 2)))
6318. 문자열 딕셔너리
6318. [파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법] 9. 내장함수 11
문제
다음의 결과와 같이 'abcdef' 문자열의 각각의 문자를 키로 하고 0~5 사이의 정수를
값으로 하는 딕셔너리 객체를 생성하고, 이 딕셔너리 객체의 키와 값 정보를 출력하는
프로그램을 작성하십시오.
(출처 : https://swexpertacademy.com/)
출력
a: 0
b: 1
c: 2
d: 3
e: 4
f: 5
동시에 하기
data = 'abcdef'
dic = {}
for i, d in enumerate(data):
dic[d] = i
print("{0}: {1}".format(d, i))
만들고 하기
data = 'abcdef'
dic = {}
for i, d in enumerate(data):
dic[d] = i
for k, v in dic.items():
print("{0}: {1}".format(k, v))