티스토리 뷰

< 문제 >

    - 무작위 출석을 거꾸로 부르는 프로그램을 작성해라. 

< 문제 푸는 방법 >

    - 부른 순서대로 기록하고, 거꾸로 출력한다.

    - 여러 방법이 존재한다. 리스트를 역순으로 만들거나, 역순으로 조회하는 방법 등을 사용할 수 있다.

 

< 코드 1 > reversed()사용

num = int(input())
a = list(map(int, input().split())) # 문자열 리스트로 입력받기
print(" ".join(repr(i) for i in reversed(a))) #대괄호 없이 거꾸로 출력

    - reversed 함수는 파이썬 인터프리터에서 제공하는 내장함수이다.

    - 반환형은 reversed 객체를 반환한다. ( 입력된 매개변수를 reversed object로 반환함, )

      => 특정 객체를 사용하고 싶다면 형변환을 반드시 해주어야 한다. ex) list(reversed(a)) 이런 식으로!

 

 

< 코드 2 > reversed() 사용, str로 입력받기

num = int(input())
a = list(map(str, input().split())) # 문자열 리스트로 입력받기
print (' '.join(reversed(a))) #대괄호 없이 거꾸로 출력

    - list (map(str, input().split()) 으로 문자열로 입력받았기 때문에 repr 은 필요 없다 !!!!

 

< 코드 3 > reverse() 사용

num = int(input())
a = list(map(str, input().split()))
a.reverse()
print (' '.join(a))

    - list에서 제공하는 멤버함수이다. => list 만 사용가능한 함수라는 것 !

    - 반환형이 없다. (바로 print 가 안 되더라구요ㅠ)

      => for i in a.reverse()는 실행 불가능 (NoneType이기 때문)

 

< 코드 4 > 슬라이스 사용

num = int(input())
a = list(map(str, input().split()))
for i in a[::-1]:
  print(i, end= ' ')

    - 리스트의 순서는 바꾸지 않고, 슬라이스를 이용해 맨 뒤 부터 출력하는 코드입니다.

       => print (a) 를 하면, 순서가 바뀌지 않은 것을 확인할 수 있습니다.

    - print의 end를 사용하여 출력형식을 맞추어줍니다. 

 

📌 정리 📌

    - reversed와 reverse의 차이점 확인하기

     - 출력형식 맞춰서 출력하기 (join, repr, end 활용 ~ ) 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함