append() 함수를 이용하면 마지막 인덱스에 아이템을 추가할 수 있다.
students = ['홍길동', '박찬호', '이용규', '박승철', '김지은']
print('students : {}'.format(students))
print('students의 길이 : {}'.format(len(students)))
print('students의 마지막 인덱스 : {}'.format(len(students) - 1))
students.append('강호동')
print('students : {}'.format(students))
print('students의 길이 : {}'.format(len(students)))
print('students의 마지막 인덱스 : {}'.format(len(students) - 1))
scores = [['국어', 88], ['영어', 91]]
scores.append(['수학', 96])
print('scores : {}' .format(scores))
for subject, scores in scores:
print('과목: {} \t 점수: {}' .format(subject, scores))
가족 구성원의 나이가 아래와 같을 때 새로 태어난 동생을 리스트에 추가해보자.
myFamilyAge = [['아빠', 40], ['엄마', 38], ['나', 9]]
myFamilyAge.append(['동생', 1])
for name, age in myFamilyAge:
print('{}의 나이: {}' .format(name, age))
insert() 함수를 이용하면 특정 위치(인덱스)에 아이템을 추가할 수 있다.
students = ['홍길동', '박찬호', '이용규', '박승철', '김지은']
print('students : {}'.format(students))
print('students의 길이 : {}'.format(len(students)))
print('students의 마지막 인덱스 : {}'.format(len(students) - 1))
students.insert(3, '강호동')
print('students : {}'.format(students))
print('students의 길이 : {}'.format(len(students)))
print('students의 마지막 인덱스 : {}'.format(len(students) - 1))
# 출력값:
students : ['홍길동', '박찬호', '이용규', '박승철', '김지은']
students의 길이 : 5
students의 마지막 인덱스 : 4
students : ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은']
students의 길이 : 6
students의 마지막 인덱스 : 5
words = ['I', 'a', 'boy.']
words.insert(1, 'am')
for word in words:
print('{} ' .format(word), end='')
#출력값:
I am a boy.
오름차순으로 정렬되어 있는 숫자들에 사용자가 입력한 정수를 추가하는 프로그램을 만들어보자(단, 추가 후에도 오름차순 정렬이 유지되어야 한다.)
numbers = [1, 3, 6, 11, 45, 54, 62, 74, 85]
inputNumber = int(input('숫자 입력: '))
insertIdx = 0
for idx, number in enumerate(numbers):
print(idx, number)
if insertIdx == 0 and inputNumber < number:
insertIdx = idx
numbers.insert(insertIdx, inputNumber)
print('numbers: {}' .format(numbers))
출력값:
숫자 입력: 55
[1, 3, 6, 11, 45, 54, 55, 62, 74, 85]
pop() 함수를 이용하면 마지막 인덱스에 해당하는 아이템을 삭제할 수 있다.
pop(n) 함수를 n인덱스에 해당하는 아이템을 삭제할 수 있다.
playerScores = [9.5, 8.9, 9.2, 9.8, 8.8, 9.0]
print('playerScores: {}' .format(playerScores))
minScore = 0; maxScoore = 0
minScoreIdx = 0; maxScooreIdx = 0
for idx, score in enumerate(playerScores):
if idx == 0 or minScore > score:
minScoreIdx = idx
minScore = score
print('minScore: {}, minScoreIdx: {}' .format(minScore, minScoreIdx))
playerScores.pop(minScoreIdx)
for idx, score in enumerate(playerScores):
if idx == 0 or maxScoore < score:
maxScooreIdx = idx
maxScoore = score
print('maxScore: {}, maxScoreIdx: {}' .format(maxScoore, maxScooreIdx))
playerScores.pop(maxScooreIdx)
print('playerScores: {}' .format(playerScores))
#출력값:
playerScores: [9.5, 8.9, 9.2, 9.8, 8.8, 9.0]
minScore: 8.8, minScoreIdx: 4
maxScore: 9.8, maxScoreIdx: 3
playerScores: [9.5, 8.9, 9.2, 9.0]
remove() 함수를 이용하면 특정 아이템을 삭제할 수 있다.
students = ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은', '강호동']
print(students)
students.remove('박찬호')
print(students)
#출력값:
['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은', '강호동']
['홍길동', '이용규', '강호동', '박승철', '김지은', '강호동']
remove()는 한 개의 아이템만 삭제 가능하다. (두 개 중 앞에 있는 아이템이 삭제됨.) 만약 삭제하려는 데이터가 2개 이상이라면 while문을 이용하자.
students = ['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은', '강호동']
print(students)
while '강호동' in students:
students.remove('강호동')
print(students)
#출력값:
['홍길동', '박찬호', '이용규', '강호동', '박승철', '김지은', '강호동']
['홍길동', '박찬호', '이용규', '박승철', '김지은']