본문 바로가기
공부/코딩

⛷ [파이썬] 파이썬 기초 정리 (5) : 리스트 _ 2

by blackb1rd 2022. 11. 4.
728x90
반응형
728x170

 

 

 

파이썬 기초 정리

 

 

6) 리스트에서 항목 제거하는 방법 

del 리스트이름[제거할 항목의 인덱스]

위의 공식을 이용하여 인덱스만 알고 있다면 어떤 항목이든 지울 수 있습니다. 그리고 del문을 이용해 지운 값에는 더이상 접근이 불가능합니다.

 

예제11)

dog = ['puppy', 'pop', 'yum']
print(dog)

del dog[0]
print(dog)

 

결과 값

['puppy', 'pop', 'yum']
['pop', 'yum']

 

 

 

 

 

 

7) pop()메서드

pop() 메서드는 리스트의 마지막 항목을 빼내서 사용할 수 있습니다. 여기서 pop이라는 이름은 리스트를 일종의 탑이라고 생각하고, 그 탑 맨 위에 있는 항목을 꺼낸다는 뜻에서 붙여졌습니다. 

 

예제12)

dog = ['puppy', 'pop', 'yum']
print(dog)

poped_dog = dog.pop()
print(dog)
print(poped_dog)

 

결과 값

['puppy', 'pop', 'yum']
['puppy', 'pop']
yum

 

예제12에서 dog = ['puppy', 'pop', 'yum'] 는 리스트 dog을 정의합니다. 

poped_dog = dog.pop()에서는 그 리스트에서 마지막 값을 하나 꺼내고 그 값을 poped_dog 변수에 저장합니다. 

print(dog)에서는 리스트를 다시 출력해 마지막 값이 제거 되었는지 확인합니다.

print(poped_dog)는 꺼낸 값을 출력하여 리스트에서 제거된 값에도 여전히 접근할 수 있음을 확인할 수 있습니다.

 

 

 

예제13)

dog = ['puppy', 'pop', 'yum']


poped_dog = dog.pop()
print(f"The last dog i owned was a {poped_dog.title()}")
print('The first dog i owend was a ' + poped_dog.title() + '.')

 

결과 값

The last dog i owned was a Yum
The first dog i owend was a Yum.

 

pop() 메서드를 이용하여 예제13과 같이 활용할 수 있습니다. 

 

 

 

+ pop() 메서드를 활용하여 리스트의 아무 위치에서나 항목 꺼내보기 

예제14)

dog = ['puppy', 'pop', 'yum']

first_owned = dog.pop(0)
print('The first dog i owend was a ' + first_owned.title() + '.')
print(dog)

 

결과 값

The first dog i owend was a Puppy.
['pop', 'yum']

 

예제14는 dog.pop()의 괄호 안에 0을 넣어 리스트 맨 앞에 있는 'puppy'를 빼내어 활용 했습니다. 

 

 

 

8) 리스트의 값으로 항목 제거하는 방법

리스트이름.remove('값 이름')

위의 remove()메서드는 제거할 항목의 값만 알고 위치를 모를 때 사용합니다.

 

예제15)

dog = ['puppy', 'pop', 'yum']
print(dog)

dog.remove('pop')
print(dog)

 

결과 값

['puppy', 'pop', 'yum']
['puppy', 'yum']

 

 

 

예제16)

dog = ['puppy', 'pop', 'yum']
print(dog)

too_bad = 'pop'
dog.remove(too_bad)
print(dog)
print(f"\nA {too_bad.title()} is too bad for me.")

 

결과 값

['puppy', 'pop', 'yum']
['puppy', 'yum']

A Pop is too bad for me.

*.title()는 앞글자만 대문자로 사용하기 위해서 추가로 넣는 것입니다. 

 

 

 

9) 리스트 정렬하는 방법 

- sort()를 이용한 리스트 영구 정렬 

 

예제17)

fruits = ['apple', 'banana', 'melon', 'cherry']
fruits.sort()
print(fruits)

 

결과 값

['apple', 'banana', 'cherry', 'melon']

 

sort()메서드는 리스트의 순서를 영구히 바꾸는 역할을합니다. 그렇기 때문에 이제 알파벳 순서로 정렬된 fruits가 원래 순서로 돌아가는 것은 불가능합니다. 

 

 

 

반응형

 

 

 

하지만 sort() 메서드에 매개변수로 reverse=True를 전달하면 알파벳 반대 순서로 영구히 정렬하는 것은 가능합니다. 예제18을 통해 reverse=True 사용법을 확인할 수 있습니다. 

 

예제18)

fruits = ['apple', 'banana', 'melon', 'cherry']
fruits.sort(reverse=True)
print(fruits)

 

결과 값

['melon', 'cherry', 'banana', 'apple']

 

 

 

- sorted()를 이용한 리스트 임시 정렬

리스트의 초기 원래 순서를 유지하면서 정렬된 순서로 표현 혹은 결과 값으로 출력만 하려고 하는 경우는 sorted()를 씁니다.

sorted()함수는 리스트를 특정 순서로 표시하지만, 리스트의 실제 순서는 바뀌지 않습니다.

 

예제19)

fruits = ['apple', 'banana', 'melon', 'cherry']

print("the original list:")
print(fruits)

print("\nsorted list:")
print(sorted(fruits))

print("\noriginal again")
print(fruits)

 

결과 값

the original list:
['apple', 'banana', 'melon', 'cherry']

sorted list:
['apple', 'banana', 'cherry', 'melon']

original again
['apple', 'banana', 'melon', 'cherry']

 

print(sorted(cars))에서는 알파벳 순서로 출력합니다. 이를 다시 출력해도 순서는 변하지 않습니다. 반면 sorted()함수에도 reverse=True 매개변수를 추가하면 알파벳 반대 순서로 표시할 수 있습니다. 

 

 

 

 

728x90
반응형
그리드형

댓글