1. 정수를 담은 이차원 리스트에서 각 원소의 길이를 담은 리스트 리턴
내가 쓴 답
def solution(mylist):
answer = []
for i in mylist :
answer.append(len(i))
return answer
소름돋게 강의에서 파이썬스럽지 않은 코드로 보여준것과 똑같음
C언어나 자바스럽다고 함..
그럼 강의에서 말하는 파이썬 코드는 이건데 왜일까..?
def solution(mylist):
return list(map(len, mylist)
2. 숫자 a,b가 있을 때 a를 b로 나눈 몫과 나머지를 공백으로 구분해 출력
내가 쓴 답
a, b = map(int, input().strip().split(' '))
print(a//b,a%b)
강의 코드
a = 7
b = 5
print(*divmod(a, b))
divmod는 큰 숫자를 다룰 때 좋음. 작은 숫자 계산시에는 연산자가 더 좋을 수도 있다.
3. n진법으로 표기된 string을 10진법 숫자로 변환
내가 쓴 답
num, base = map(int, input().strip().split(' '))
print(int(str(num), base))
강의 답
num = '3212'
base = 5
answer = int(num, base)
이번에는 강의에서 원하는대로 작성했는데 만날 까먹고 할때마다 검색하는건 왜일까..
4. 문자열 정렬
문자열 s, 자연수n 입력으로 들어올 때 문자열을 좌/가운데/우측 정렬
s, n = input().strip().split(' ')
n = int(n)
print(s.ljust(n))
print(s.center(n))
print(s.rjust(n))
5. 알파벳 출력
입력 0이면 소문자, 1이면 대문자 출력
내가 쓴 답
num = int(input().strip())
letter = 'abcdefghijklmnopqrstuvwxyz'
if num == 0 :
print(letter)
else :
print(letter.upper())
강의 답
import string
string.ascii_lowercase # 소문자 abcdefghijklmnopqrstuvwxyz
string.ascii_uppercase # 대문자 ABCDEFGHIJKLMNOPQRSTUVWXYZ
string.ascii_letters # 대소문자 모두 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
string.digits # 숫자 0123456789
전에 한번 본것 같은데...별거가 다있네..