Python / / 2022. 8. 28. 15:56

Python 기초 - list , index ,정렬

컬렉션 자료형 4가지 (중요순서 : 1.리스트 2. 딕셔너리)

  • 리스트 list -> *** 제일 중요하다 리스트와 튜플이 비슷하다.
  • 튜플 tuple
  • 집합 set 집합과 딕셔너리도 비슷하다.
  • 딕셔너리 dict

 

1. 리스트를 사용하지 않을경우, 

#[1]: 리스트가 없으면 변수 여러개를 사용해야 해서 불편하다.

person1_name = '홍길동'
person1_age = '33'
person1_address ='서울'
person1_tel ='010-1234-5678' 

print(person1_name)
print(person1_age)
print(person1_address)
print(person1_tel)

리스트를 사용 할 경우, 

 

#[2]: 리스트는 데이터 값을 담는 바구니 같은 느낌이다.
#서로 다른 데이터 자료형 값을 다 넣을수있다. [] < 를 이용한다.

person1 = ['홍길동',33,'서울','010-1234-5678']
print(person1)

[1]. 정수형 , 실수형 , 문자형 리스트 생성 예제 

#Q1. 정수형, 실수형 ,문자형 리스트를 생성하는 예제를 만들어보시오. 

a = [1,2,3,4,5]
print('정수형 리스트:',a,type(a))

b = [1.0,2.0,3.0] ## [1. , 2. , --- 이런식으로 .만찍어도 가능하다.]
print('실수형 리스트:',b,type(b))

c = ['문자1','문자2','문자3'] 
print('문자형 리스트:',c,type(c))

리스트는 여러가지 값 데이터를 담을 수 있다 . 

 

ex) 

#[1]: 정수 +list

a = [1,2,3,4,5,['a','b','c']]
print('정수+List:',a,type(a))

#[2]: 정수 +실수+ 문자
b = [1,2,3,3.14,'korea',['k']]
print('정수+실수+ 문자:',b,type(b))

#3 정수 + 리스트 + 튜플
c = [1,2,3,[1,2,3],(1,2,3)]
print('정수+리스트+튜플:',c,type(c))

#정수,실수,문자.리스트,튜플,집합,딕셔너리 

d = [1,2,3,1.,2.,['문자1','문자2'],(1,2,3),{1,2,3,5},{'a':2,'b':3,'c':300}]
print('주요 타입 다 넣기:',d,type(d))

2. 빈 리스트 생성하기 

 

#빈 리스트 생성 하기

a = [] # 
print('빈 리스트입니다.',a)

#2. 

b =list() #타입 변환
print(b)

3. 인덱스를 이용하여 리스트에 접근하기

#인덱스 이용해서 리스트에 접근하기 

a = [100,200,300,400] 
print(a[0]) # a에서 첫번째 값 100이 출력된다.

b = [100,3.14,'korea',[1,2,3,5],(1,2,3,3),{1,2,3,3},{'a':10,'b':2,'c':30}]
#두번째 리스트에서 5를 찾아라.
print('5를 찾기:',b[3][3]) # 4번째 자리 [1,2,3,5]가 있으므로, 
#또 3번인덱스에 5가 있다.

#요소개수 출력
print('len() :',len(b)) #7

Q2. 역인덱스를 사용하여 거꾸로 출력하기 ! 

 

#역 인덱스를 사용하여 , 리스트 요소가 마지막부터 거꾸로 출력되게끔 하기 ! 

a = [100,200,300,400,500]
print('거꾸로 출력:',a[-1],a[-2],a[2],a[1],a[0])

<리스트와 for 반복문 이용하기>

 

#인덱스와 반복문 사용
a = [100,200,300,400,500,[1,2,3],(4,5,6)]

for i in range(len(a)): #리스트 요소 개수를 구한다
    print(a[i],end=' ')

<리스트 오름차순, 내림차순 정렬하기>

#오름차순으로 출력하기 // 
#sort() or sorted() 함수 사용


eng_score = [100,40,30,80,70]
print("-"*50)

eng_score.sort() #default 값은 False다.

#내림차순으로 정렬

eng_score.sort(reverse=True) #

<역 인덱스를 사용하여 출력하기 > 

 

# 역 인덱스를 사용해서  내림차순으로 출력 하기 
eng_score = [100,40,70,90,60]
start = -5
last = -1

eng_score.sort(reverse=True)
for i in range(start,last+1):
    print(eng_score[i], end =' ')

<리스트에 새로운 요소 추가 /수정하기> 

#리스트에 새로운 요소 추가/수정 하기 
eng_score = [100,40,70,90,60] #원본 리스트에 80 추가 하기 

eng_score.append(80) # append 사용하여 80 추가

print(eng_score)

# 수정하기  90을 92로 수정

eng_score[-2] = 92
print(eng_score)

#삭제 -- del 사용하여 100 삭제

del eng_score[0]

print(eng_score)

<input문을 사용하여 list 인덱스 번호 뽑기> 

#동물의 케이지를 찾아서 출력 단,input문 사용

animals =['elephat','hippo','lion','tiger']

a = input("동물 이름을 입력하세요 = ") #동물 이름 입력
a_index = animals.index(a) #해당 요소이름의 인덱스정보를 알아낸다.

print(f"{a}는 {a_index}번에 있습니다.")

< 리스트 중복 값 제거 하는 법 set로 변환후 다시 리스트로 변환> 

#중복된 값 제거 하기
animals2 =['elephant','hippo','lion','tiger','elephat','hippo','lion','tiger']

a =set(animals2) #리스트를 set으로 변환(set 함수는 중복 허용X)
print(a,type(a))

a =list(set(animals2)) #set > 리스트 다시 변환
print(a,type(a))

 

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유