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): 한 변수의 데이터를 각각의 변수로 변환하는 것.
t = [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 = [49, 79, 20]
math_score = [43, 59, 85]
eng_score = [49, 79, 48]
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
#리스트의 메모리 관리 방식
# 파이썬은 리스트를 저장할 때 값 자체가 아니라, 값이 위치한 메모리 주소를 저장한다.
# (메모리 저장 구조로 인해) 리스트는 다양한 형태의 변수가 하나의 리스트에 들어갈 수 있다.
a = ['color', 1, 0.2]
print(a) #['color', 1, 0.2]
# (메모리 저장 구조로 인해) 리스트 안에 다른 리스트를 넣을 수도 있다. = 중첩 리스트
color = ['yellow','blue','green']
a[0] = color
print(a) #[['yellow', 'blue', 'green'], 1, 0.2]
#깊은 복사
scores = [10, 20, 30, 40, 50]
values = list(scores)
values[2] = 99
print(scores) #[10, 20, 30, 40, 50]
print(values) #[10, 20, 99, 40, 50]
#copy함수
a = [1, 2, 3, 4]
b = a.copy()
print(a is b) #False #메모리 주소 비교 연산
print(a == b) #True #값 비교 연산
#--------------------------------------------------------------------------------------------------------
#Lab1
# 입력받은 문자 출력하기
# : 표준 입력으로 숫자 또는 문자열 여러개가 입력되어 리스트 x에 저장된다.
# (입력되는 숫자 또는 문자열의 개수는 정해져 있지 않음).
# 리스트 x의 마지막 요소 5개를 삭제한 뒤 출력하라.
x = 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 효정
'''
|
'PROGRAMMING (NOTE) > Python' 카테고리의 다른 글
[Python] 3장 list (basic) (0) | 2020.12.06 |
---|---|
[Python] 3장 input(), split(), map(), sep(), end(), string (0) | 2020.12.06 |
[Python] 2장 Variables and data types (0) | 2020.12.06 |
댓글