본문 바로가기
PROGRAMMING (NOTE)/Python

[Python] 3장 list (intermediate)

by 1005 2020. 12. 6.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#개념
#패킹(packing): 한 변수에 여러 개의 데이터를 할당하는 것.
#언패킹(unpacking): 한 변수의 데이터를 각각의 변수로 변환하는 것.
 
= [1,2,3]
a, b, c = t #t에 있는 값 1, 2, 3을 변ㅅ a, b, c에 각각 언패킹.
print(t, a, b, c) #[1, 2, 3] 1 2 3
# 언패킹 시 할당받는 변수의 개수가 적거나 많으면 모두 에러가 발생.
 
#이차원 리스트
kor_score = [497920]
math_score = [435985]
eng_score = [497948]
midterm_score = [kor_score, math_score, eng_score]
print(midterm_score) #[[49, 79, 20], [43, 59, 85], [49, 79, 48]]
print(midterm_score[0][2]) #20
 
#리스트의 메모리 관리 방식
# 파이썬은 리스트를 저장할 때 값 자체가 아니라, 값이 위치한 메모리 주소를 저장한다.
# (메모리 저장 구조로 인해) 리스트는 다양한 형태의 변수가 하나의 리스트에 들어갈 수 있다.
= ['color'10.2]
print(a) #['color', 1, 0.2]
 
# (메모리 저장 구조로 인해) 리스트 안에 다른 리스트를 넣을 수도 있다. = 중첩 리스트
color = ['yellow','blue','green']
a[0= color
print(a) #[['yellow', 'blue', 'green'], 1, 0.2]
 
#깊은 복사
scores = [1020304050]
values = list(scores)
values[2= 99
print(scores) #[10, 20, 30, 40, 50]
print(values) #[10, 20, 99, 40, 50]
 
#copy함수
= [1234]
= a.copy()
print(a is b) #False  #메모리 주소 비교 연산
print(a == b) #True   #값 비교 연산
 
#--------------------------------------------------------------------------------------------------------
#Lab1
# 입력받은 문자 출력하기
# : 표준 입력으로 숫자 또는 문자열 여러개가 입력되어 리스트 x에 저장된다.
#  (입력되는 숫자 또는 문자열의 개수는 정해져 있지 않음).
#  리스트 x의 마지막 요소 5개를 삭제한 뒤 출력하라.
 
= input('입력: ').split() #입력: 1 2 3 4 5 6 7 8 9 10
del x[-5:]
print(x) #['1', '2', '3', '4', '5']
 
#Lab2
# 출석번호 재정렬하기
# :현재 학생이 3명 있다고 가정하고 전학을 오는 친구가 있으면 그 친구를 포함하여 오름차순으로 번호를 부여하라.
 
student = ['영민','동주','다인']
print('현재 학생은 ',student)
student.append(input('전학 온 학생은 누구입니까?'))
print(student)
student.sort()
print('번호 재정렬....')
for i in range(0,4):
    print(i+1,student[i],end='\n')
'''
현재 학생은  ['영민', '동주', '다인']
전학 온 학생은 누구입니까?효정
['영민', '동주', '다인', '효정']
번호 재정렬....
1 다인
2 동주
3 영민
4 효정
'''
 
 
 

 

댓글