Array는 대괄호[] 안에 값들을 나열하여 생성하며, 각 값들은 쉽표로 구분한다. Array에 저장되어 있는 값은 'element'라 한다.

Array에는 string, 숫자, boolean 값 등 모든 type의 값을 저장할 수 있고, 서로 다른 type의 값들을 섞어서 저장하는 것도 가능하다.
Array에 저장되어 있는 값울 읽어들이려면 해당 값의 순서, 즉 index를 사용해 읽어들인다. Array에서 index는 0부터 시작한다. => 위 그림에서 "강원도"는 0번, "경기도"는 1번이다.
n개의 element로 이루어진 array의 마지막 element의 index는 n-1이 된다.
List를 사용하면 다양한 원소들의 모음을 만들 수 있다.
kc = [], kc1 = list()
kc2 = [1,3,5,6,7]
kc3 = ["하이",2,4,6,[1,7],True]
kc4 = ["python",False,[2,5],1,2,6]
이처럼 list는 선언만 할 수도 있고, list 안에 한 원소로만 구성될 수도 있고, 다양한 자료형의 원소들로 구성될 수도 있다.
Input으로 주어진 리스트의 첫번째와 마지막 element의 값을 더한 값을 리턴해주세요.
만일 리스트가 비어있다면 0이 리턴되어야 합니다.
리스트의 총 길이가 1이라면 그 하나의 요소 값만 리턴해주면 됩니다.
def add_elems(arr): # 함수정의
if len(arr) == 0: return 0 # arr의 길이가 0이라면 return 0
else if len(arr) == 1: return arr[0] # arr의 길이가 1이라면 return 0번째 element
else: return arr[0] + arr[-1] ## arr 안의 0번째와 -1번째 element를 더해 return
List는 +와 * 연산을 할 수 있다.
a = [1,2]
b = [3.4]
-> a+b > [1,2,3,4]
리스트를 더하면 각 리스트의 원소들이 하나의 리스트로 결합된다.
-> a3 > [1,2,1,2,1,2]
연산은 list의 원소들을 곱해준 수만큼 반복해서 한 list에 포함시킨다.
sort() 함수를 사용하여 list의 원소 값들을 내림차순, 오름차순으로 정렬할 수 있다.
a = [1,4,2,3]
a.sort()
a > [1,2,3,4] : a변수 원소 값이 정렬되었다.
주의!👺
sort()는 해당 리스트 변수의 원래 값에 적용되므로 이를 인지하고 사용해야 한다. 반면, sorted() 함수를 사용하면 해당 List값은 변하지 않지만 정렬 기능이 이루어졌을 때의 원소 값이 출력된다.
a = [1,5,3,2,4]라면
sorted(a) > [1,2,3,4,5]
a > [1,5,3,2,4]
sort()는 a.sort()처럼 쓰이고 sorted()는 sorted(a)로 쓰인다.
sort()는 a라는 list에 접근하여 그 변수의 값을 정렬한다고 보고,
sorted()는 a의 변수에 접근하는 것이 아니라 a의 데이터를 사용하여 그 값만 사용한다고 인식한다.
sort()함수는 기본적으로 오름차순으로 정렬하지만, reverse를 이용해 내림차순으로 정렬할 수도 있다.
a = [1,5,3,2,4]
a.sort(reverse=True)
에서 a > [5,4,3,2,1]로 나온다. Default는 sort(reverse=False)이기 때문에 오름차순으로 나온 것.
Python에서 range()함수는 일정 범위의 연속된 정수 생성하는 데 사용된다. 주로 for문과 함께 사용되며 일정 횟수만큼 반복을 수행하거나, 특정 범위의 정수를 이용한 작업에 유용하게 사용된다.
range()함수는 list나 tuple을 반환하지 않고 range 객체를 반환한다. 이 객체는 반복문에서 사용하거나 list() 함수를 통해 리스트로 변환할 수 있다.
class Solution:
def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
"""
Do not return anything, modify nums1 in-place instead.
"""
for i in range(n):
nums1[i+m] = nums2[i]
nums1.sort()