4 minute read

✏️1번

  • 문제
    다음 빈 4줄에 들어갈 파이썬 코드는?
mylist = []
____________
____________
____________
____________
print(mylist)

결과: [8, 5, 9, 7]
  • 답안
#1. append함수를 사용하여 리스트에 문자열을 추가함
mylist = []
mylist.append(8)
mylist.append(5)
mylist.append(9)
mylist.append(7)

print(mylist)

# 이때 extend함수를 사용하면 굳이 append함수를 네번 사용하지 않아도 8,5,7,9를 한번에 리스트에 추가할 수 있음.
# mylist = []
# mylist.extend([8,5,7,9]) 또는 mylist += [8,5,7,9]
# print(mylist)

✏️2번

  • 문제
    다음 빈 2줄에 들어갈 파이썬 코드는?
mylist = [‘dot’, ‘perls’]
____________
____________
print(mylist)

결과: [‘python’, ‘dot’]
  • 답안
#2. 리스트의 맨 앞0번째 자리에 'python'을 insert함수를 사용해 삽입하고, 'perls'를 remove함수를 사용해 제거해줌.
mylist = ['dot','perls']
mylist.insert(0, 'python')
mylist.remove('perls')

print(mylist)

✏️3번

  • 문제
    다음 빈줄에 들어갈 파이썬 코드는?
a = [1,2,3]
b = [4,5,6]
____________
print(b)

결과: [4,5,6,1,2,3]
  • 답안
#3. b리스트와 a리스트를 합칠 수 있음.
a = [1, 2, 3]
b = [4, 5, 6]
b = b+a

print(b)

✏️4번

  • 문제
    다음 빈 4줄에 들어갈 파이썬 코드는?
animals = []
____________
____________
____________
____________
print(animals)
print(count)

결과: [‘cat’, ‘dog’, ‘mouse’]
       3
  • 답안
#4. append함수를 사용하여 리스트에 차례로 'cat','dog','mouse'를 추가함.
#   len함수를 사용하여 리스트안의 요소 개수를 세준 후 출력함.
animals = []
animals.append('cat')
animals.append('dog')
animals.append('mouse')
count = len(animals)

print(animals)
print(count)

✏️5번

  • 문제
    다음 빈줄에 들어갈 파이썬 코드는?
mylist = [200,300,100,50]
____________
print(mylist)
____________
print(mylist)
____________
print(mylist)

결과: 
[50,100,300,200]
[200,300,100,50]
[50,100,200,300]
  • 답안
#5. reverse함수를 사용하여 리스트를 원래의 역순으로 뒤집을 수 있음.
#   sort함수를 사용하여 리스트의 요소를 순서대로 정렬할 수 있음.
mylist = [200, 300, 100, 50]
mylist.reverse()
print(mylist)

mylist.reverse()
print(mylist)

mylist.sort()
print(mylist)

✏️6번

  • 문제
    다음 프로그램을 실행시켜 보고 그 출력결과를 분석하시오.
def lastchar(s):
return s[-1]
values = ["abc", "bca", "cab"]
values.sort(key=lastchar)
print(values)
values.sort(key=lambda s: s[1])
print(values)

# 결과: 
['bca', 'cab', 'abc']
['cab', 'abc', 'bca']
  • 답안
#6.
# lastchar 함수를 정의하며 변수 s의 [-1]이 결과값이 됨.
def lastchar(s):
    return s[-1]

values = ["abc","bca","cab"]

# 리스트 abc, bca, cab 에서 -1자리에 있는 c,a,b를 기준으로 정렬하여 bca, cab, abc가 되는 것 같음.
values.sort(key=lastchar)
print(values)

# lamda는 변수 s의 1자리를 결과값으로 돌려주는 일회용 함수인 것 같음. 변 s[1]을 각각 비교하여 정렬하여 cab, abc, bca가 되는 것 같음.
values.sort(key=lambda s: s[1])
print(values)

✏️7번

  • 문제
    다음 빈줄에 들어갈 파이썬 코드는?
names = ["Bill", 
"Tommy", "Bill", 
"Janet", "Stacy"]
_____________
print(names)
_____________
print(names)
_____________
print(names)

결과: 
['Tommy', 'Bill', 'Janet', 'Stacy']
['Tommy', 'Janet', 'Stacy']
['Janet', 'Stacy']
  • 답안
#7. remove함수를 세번 사용하여 'Bill'을 차례로 하나씩, 그리고 'Tommy'를 제거할 수 있음. 
names = ["Bill","Tommy","Bill","Janet","Stacy"]

names.remove("Bill")
print(names)

names.remove("Bill")
print(names)

names.remove("Tommy")
print(names)

#remove함수 대신 del함수를 사용할 수도 있음.
names = ["Bill","Tommy","Bill","Janet","Stacy"]

del names[0]
print(names)

del names[1]
print(names)

del names[0]
print(names)

✏️8번

  • 문제
    다음 리스트에서 문자 ‘a’의 등장 횟수를 세는 코드를 작성하시오.
names = ['a', 'a', 'b', 'c', 'a']
  • 답안
#8. count함수를 사용하여 리스트안에서 a가 몇 번 나오는지 횟수를 알 수 있음.
names = ['a','a','b','c','a']
number = names.count('a')

print(number)

✏️9번

  • 문제
    다음 프로그램을 실행하고 출력결과를 해석하시오.
# Input list.
values = ["uno", "dos", "tres", 
"cuatro"]
# Locate string.
n = values.index("dos")
print(n, values[n])
# Locate another string.
n = values.index("tres")
print(n, values[n])
# Handle nonexistent string.
try:
n = values.index("?")
# Not reached.
print(n)
except:
# Value not found.
print("Not found")
  • 답안
#9.
# Input list.
values = ["uno", "dos", "tres", "cuatro"]

# Locate string.
# 인덱스함수를 사용해 나온 'dos'의위치 2이 n이 됨. 
n = values.index("dos")
print(n, values[n])

# Locate another string.
# 인덱스함수를 사용해 나온 'tres'의위치 2가 n이 됨.
n = values.index("tres")
print(n, values[n])

# Handle nonexistent string.

# try~except는 예외를 처리하는 구문으로, 리스트안에 없는 요소가 입력되더라도 오류가 나지 않고 except를 통해 'not found'를 출력함으로써 예외를 처리할 수 있음.
# except와 함께 pass를 사용할 수도 있음
try:
    n = values.index("?")
    # Not reached.
    print(n)
except:
    # Value not found.
    print("Not found")

✏️10번

  • 문제
    다음 프로그램을 실행하고 출력결과를 해석하시오.
# Create a list.
elements = []
# Append empty lists in first 
two indexes.
elements.append([])
elements.append([])
# Add elements to empty 
lists.
elements[0].append(1)
elements[0].append(2)
elements[1].append(3)
elements[1].append(4)
# Display top-left element.
print(elements[0][0])
# Display entire list.
print(elements)
  • 답안
#10. 
# 빈 리스트를 생성함.
elements = []

# 빈 리스트안에 빈 리스트 두개를 생성함.
elements.append([])
elements.append([])

# 빈 리스트 안의 첫번째 빈 리스트에 1과 2를 추가함.
elements[0].append(1)
elements[0].append(2)
# 빈 리스트 안의 두번째 빈 리스트에 3과 4를 추가함.
elements[1].append(3)
elements[1].append(4)

# 리스트 elements의 0자리의 리스트에서 0자리의 요소를 출력함.
print(elements[0][0])

# 2차원 리스트 elements 전체를 출력함.
print(elements)

✏️11번

  • 문제
    다음 프로그램을 실행하고 출력결과를 해석하시오.
list = [10, 20, 30]
res = str.format("The 
values are {v[0]}, {v[1]} 
and {v[2]}", v=list)
print(res)
  • 답안
#11. 포맷함수를 사용하여 [0],[1],[2]에 차례로 10,20,30을 대입한 문자열을 출력함.
list = [10, 20, 30]

res = str.format("The values are {v[0]}, {v[1]} and {v[2]}", v=list)
print(res)

✏️12번

  • 문제
    다음 프로그램을 실행하고 all과 any 문장의 의미를 기술하시오.
items = [False, None, True]
if not all(items):
print(False)

items = [10, 20, 30]
if all(items):
print(True)

elements = [False, None, "Pomegranate", 0]
if any(elements):
print(True)

elements = [0, 0, False]
if not any(elements):
print(False)
  • 답안
#12.
# all(x)는 x의 요소가 모두 참이면 true를 돌려줌.
# items 리스트에서 True는 참, False와 None은 거짓이므로 모두 참이 아니기 때문에 false를 돌려주고 not에 의해 다음문장이 실행되어 False를 출력했다고 생각함.
items = [False, None, True]
if not all(items):
    print(False)

# items 리스트 10,20,30은 모두 참이므로 true를 돌려주고 다음 문장이 실행되어 True를 출력했다고 생각함.    
items = [10, 20, 30]
if all(items):
    print(True)

# any(x)는 x의 요소가 모두 거짓이면 false를 돌려주고 요소 중 하나라도 참이 있다면 true를 돌려줌.
# 리스트 elements 에서 "Pomegranate"는 참이므로 모두 거짓이 아니기때문에 true를 돌려주고 다음문장이 실행되어 True를 출력했다고 생각함.
elements = [False, None, "Pomegranate", 0]
if any(elements):
    print(True)
    
# 리스트 elements 에서 0과 False모두 거짓이므로 false를 돌려주고 not에 의해 다음 문장이 실행되어 False를 출력함.
elements = [0, 0, False]
if not any(elements):
    print(False)