본문 바로가기

분류 전체보기402

튜플 응용하기 메서드 설명 index(값) 리스트에서 특정 값의 인덱스를 구함 count(값) 리스트에서 특정 값의 개수를 구함 튜플 응용하기 이번에는 튜플의 메서드와 다양한 사용 방법을 알아보겠습니다. 튜플은 리스트와는 달리 내용을 변경할 수 없습니다(불변, immutable). 따라서 내용을 변경하는 append 같은 메서드는 사용할 수 없고, 요소의 정보를 구하는 메서드만 사용할 수 있습니다. 튜플에서 특정 값의 인덱스 구하기 index(값)은 튜플에서 특정 값의 인덱스를 구합니다. 이때 같은 값이 여러 개일 경우 처음 찾은 인덱스를 구합니다(가장 작은 인덱스). 다음은 53이 세 번째에 있으므로 인덱스 2가 나옵니다. >>> a = (38, 21, 53, 62, 19, 53) >>> a.index(53) 2 특.. 2023. 10. 9.
map 22.6 리스트에 map 사용하기 이번에는 리스트에 map을 사용해보겠습니다. map은 리스트의 요소를 지정된 함수로 처리해주는 함수입니다(map은 원본 리스트를 변경하지 않고 새 리스트를 생성합니다). list(map(함수, 반복가능한 객체)) list(map(함수, 리스트)) tuple(map(함수, 튜플)) 예를 들어 실수가 저장된 리스트가 있을 때 이 리스트의 모든 요소를 정수로 변환하려면 어떻게 해야 할까요? 먼저 for 반복문을 사용해서 변환해보겠습니다. >>> a = [1.2, 2.5, 3.7, 4.6] >>> for i in range(len(a)): ... a[i] = int(a[i]) ... >>> a [1, 2, 3, 4] for에 range(len(a))를 사용해서 인덱스를 가져왔습.. 2023. 10. 9.
리스트 표현식 리스트 표현식( 리스트 컴프리헨션 / list comprehension) 사용하기[식 for 변수 in 리스트]list(식 for 변수 in 리스트)>>> a = [i for i in range(10)]        # 0부터 9까지 숫자를 생성하여 리스트 생성>>> a[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> b = list(i for i in range(10))    # 0부터 9까지 숫자를 생성하여 리스트 생성>>> b[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]   리스트 표현식의 동작 순서 >>> c = [i + 5 for i in range(10)]    # 0부터 9까지 숫자를 생성하면서 값에 5를 더하여 리스트 생성>>> c[5, 6, 7, 8, 9, 10, 11.. 2023. 10. 9.
리스트의 가장 작은 수, 가장 큰 수, 합계 구하기 22.4 리스트의 가장 작은 수, 가장 큰 수, 합계 구하기 이번에는 리스트(튜플)에 저장된 값 중에서 가장 작은 수, 가장 큰 수, 요소의 합계 구해보겠습니다. 22.4.1 가장 작은 수와 가장 큰 수 구하기 먼저 가장 작은 수와 가장 큰 수는 어떻게 구할까요? 앞에서 반복문을 배웠으니 요소를 모두 반복하면서 숫자를 찾아내 보겠습니다. >>> a = [38, 21, 53, 62, 19] >>> smallest = a[0] >>> for i in a: ... if i >> smallest 19 먼저 리스트 a의 첫 번째 요소 a[0]를 변수 smallest에 저장합니다. 그리고 for로 리스트의 요소를 모두 반복하면서 i가 smallest보다 .. 2023. 10. 9.
리스트 반복문 22.3 반복문으로 리스트의 요소를 모두 출력하기 리스트에 인덱스를 지정하여 요소를 한 개씩 출력하기는 상당히 귀찮죠? 이번에는 리스트와 반복문을 사용하여 간단하게 모든 요소를 출력해보겠습니다. 22.3.1 for 반복문으로 요소 출력하기 for 반복문은 그냥 in 뒤에 리스트를 지정하면 됩니다. for 변수 in 리스트: 반복할 코드 다음은 for로 리스트 a의 모든 요소를 출력합니다. >>> a = [38, 21, 53, 62, 19] >>> for i in a: ... print(i) ... 38 21 53 62 19 for i in a:는 리스트 a에서 요소를 꺼내서 i에 저장하고, 꺼낼 때마다 코드를 반복합니다. 따라서 print로 i를 출력하면 모든 요소를 순서대로 출력할 수 있습니다. 물론 .. 2023. 10. 9.
리스트의 할당과 복사 알아보기 이번에는 리스트의 할당과 복사에 대해 알아보겠습니다. 할당과 복사는 비슷한 것 같지만 큰 차이점이 있습니다. 먼저 다음과 같이 리스트를 만든 뒤 다른 변수에 할당합니다. >>> a = [0, 0, 0, 0, 0] >>> b = a b = a와 같이 리스트를 다른 변수에 할당하면 리스트는 두 개가 될 것 같지만 실제로는 리스트가 한 개입니다. ▼ 그림 22-12 리스트를 다른 변수에 할당했을 때 a와 b를 is 연산자로 비교해보면 True가 나옵니다. 즉, 변수 이름만 다를 뿐 리스트 a와 b는 같은 객체입니다. >>> a is b True a와 b는 같으므로 b[2] = 99와 같이 리스트 b의 요소를 변경하면 리스트 a와 b에 모두 반영됩니다. >>> b[2] = 99 >>> a [0, 0, 99, 0.. 2023. 10. 9.
리스트 method 리스트 메서드 메서드 설명 append(값) 리스트 끝에 값을 추가, 리스트[len(리스트):] = [값]과 같음 append(리스트) 리스트를 넣으면 리스트 안에 리스트가 들어감 extend(리스트) 리스트 끝에 다른 리스트 연결, 리스트[len(리스트):] = [값, 값]과 같음 insert(인덱스, 값) 리스트의 특정 인덱스에 값을 추가 pop() 리스트의 마지막 값을 삭제한 뒤 삭제한 값을 반환 pop(인덱스) 인덱스를 지정하면 해당 인덱스의 값을 삭제한 뒤 삭제한 값을 반환, del 리스트[인덱스]와 같음 remove(값) 리스트에서 특정 값을 삭제 index(값) 리스트에서 특정 값의 인덱스를 구함 count(값) 리스트에서 특정 값의 개수를 구함 reverse() 리스트에서 값의 순서를 반대.. 2023. 10. 9.
for 반복문 / while 반복문 / 무한Loop /break, continue 숫자를 감소시키기>>> for i in range(10, 0, -1):    # 10에서 1까지 1씩 감소...     print('Hello, world!', i)...Hello, world! 10Hello, world! 9Hello, world! 8... (생략)Hello, world! 2Hello, world! 1 증가폭을 음수로 지정하는 방법 말고도 reversed를 사용하면 숫자의 순서를 반대로 뒤집을 수 있습니다.for 변수 in reversed(range(횟수))for 변수 in reversed(range(시작, 끝))for 변수 in reversed(range(시작, 끝, 증가폭))>>> for i in reversed(range(10)):    # range에 reversed를 사용하여 .. 2023. 10. 2.
조건문 if 조건문에서 코드를 생략하기>>> x = 10>>> if x == 10:...     pass...>>> if 다음 줄에 pass라는 특별한 키워드를 넣었습니다. 여기서 pass는 아무 일도 하지 않고 그냥 넘어간다는 뜻입니다. 파이썬에서는 if 다음 줄에 아무 코드도 넣지 않으면 에러가 발생하므로 if 조건문의 형태를 유지하기 위해 pass를 사용합니다.if x == 10:    pass    # TODO: x가 10일 때 처리가 필요함    True, False로 취급하는 것들 다음은 파이썬 문법 중에서 False로 취급하는 것들입니다.클래스 인스턴스의 __bool__(), __len__() 메서드가 0 또는 False를 반환 NoneFalse0인 숫자들: 0, 0.0, 0j비어 있는 문자열, 리.. 2023. 10. 2.