[정보통신산업진흥원] AI 웹개발 취업캠프 - 유데미 필수 강의 후기/기록 (코딩 초보자를 위한 파이썬(Python) 입문(Beginner))

Alicia·2023년 8월 5일
0

AI_Web_nipa

목록 보기
11/31
post-thumbnail

1. 문자열 관련 함수

word = 'apple'
word.find('p') # 단어를 쭉 보다가 제일 먼저 발견된 인덱스의 번호를 출력 1
word.count('p') # 단어를 보다가 p라는 것이 값에 몇개 있는지 출력 해라.
word.index('p') # 단어를 쭉 보다가 제일먼저 발견된 인덱스의 번호를 출력 1
len(word) # 값의 깊이를 나타내주는 것
word.upper() # 소문자를 대문자로
word[0].upper() #0번째 인덱스의 문자를 대문자로 바꿔라
word.lower() # 대문자를 소문자로 바꾸기

  1. slicing 슬라이싱 예제

조건 1 : EFFINO에서 앞에 3글자를 사용

print(word[:word.index('I')])

조건 2 : 만들어진 글자에서 BUS를 붙힌 후에 BUS를 TRAIN으로 변경

print(word+"BUS")

print(word.replace("BUS", "TRAIN")


2. print는 왜 문자열이 아닌 값에는 "str"을 붙여야 할까?

print함수는 문자열을 출력해주는 함수이니, 다른 타입의 객체들은 실행불가능 할까요?

# print_int_float_bool.py
print(123)
print(123.123)
print(True)
실행결과

123
123.123
True

사실 print함수는 객체들을 str타입으로 형변환한다음에 출력해줍니다.

따라서 위에 코드는 다음과 같이 작성한것과 동일한 출력결과를 가집니다.

원래는 str(변수)이 파이썬의 데이터 타입을 명확하게 지정하여 혼란을 방지하기 위한 설계 원칙 중 하나입니다.

3. 튜플은 왜 쓰는 걸까?

튜플의 생김새는 아래와 같습니다.

data = (1,2)

가장 흔하게 볼 수 있는 생김새는

다른 자료구조 내부에 element로 포함된 모양새입니다.

data = [(1,2), (2,3), (3,4)]

그런데 왜 이 튜플 타입을 사용해야 하는걸까요?

튜플 대신 리스트 타입을 써도 괜찮아 보이는데요,

심지어 튜플은 내부 element 내용을 변경할 수도 없습니다!

이렇게 하면 안되는 걸까?

data = [[1,2], [2,3], [3,4]]

튜플이 필요한 이유
결과부터 말하자면 튜플이 필요한 이유는,
튜플은 리스트와 비교해서 더 메모리용량을 아끼고 퍼포먼스를 향상시키는데 도움이 되기 때문입니다.

리스트는 비교적 무겁다

  1. 동적 배열: 동적 배열은 미리 초깃값을 최소한으로 잡아 배열을 생성합니다.

    데이터가 추가되면 배열을 늘려줍니다.

    보통 배열이 꽉 찼을 때 새 데이터를 추가하려 하면

    배열의 사이즈를 더블링(doubling) 해줍니다.

  1. 리스트는 가변, 튜플은 불변

    리스트는 가변객체이기 때문에 튜플보다 오버헤드가 큽니다.
    값이 고정되어 있거나, 비교적 작은 크기의 공간을 필요로 하는 데이터를 쓴다면

    리스트보다 튜플을 쓰는 것이 퍼포먼스를 높이는 데 도움이 됩니다.

4. 연산관련 이제 알게 된것들

2^2 = 제곱표시는 2 ** 2
#논리 연산 and => (1>2) and (2>3)   

          or           or
(int(4/2)) = 2 

나누기는 실수로 나오기 때문에
randint(1,10) = 1부터 10까지 중 랜덤숫자

randrange(1,10) = 1부터 10미만!!!!중 랜덤숫자
fromkeys : 사전에서 key의 value를 확인하고 싶을때

5. 람다 함수의 사용성과 효율성

간결성과 읽기 쉬움: 람다 함수는 간단한 로직을 한 줄로 표현할 수 있어 코드를 더 읽기 쉽게 만듭니다. 이는 코드의 가독성을 높이고, 작은 연산이나 변환이 필요한 경우에 특히 유용합니다.

인라인 함수: 람다 함수는 변수에 할당하지 않고도 바로 사용할 수 있어서 중간 단계 없이 필요한 곳에서 즉시 활용할 수 있습니다.

고차 함수와 결합: 람다 함수는 고차 함수와 함께 사용할 때 편리합니다. 고차 함수는 함수를 다루는 함수를 말하며, 람다 함수를 이용하면 이러한 고차 함수와 조합하여 더 간결한 코드를 작성할 수 있습니다.

단순한 연산 또는 변환: 람다 함수는 반복적이고 단순한 연산이나 변환 작업을 효과적으로 처리합니다. 예를 들어, 리스트나 맵 등의 함수와 함께 사용하면 코드를 더 간결하게 만들 수 있습니다.

작은 규모의 함수: 람다 함수는 작은 규모의 함수를 간편하게 정의하는데 적합합니다. 함수의 몸체가 간단하고 한 줄로 표현 가능한 경우 람다 함수를 사용하여 함수를 빠르게 생성할 수 있습니다.

익명 함수: 람다 함수는 익명 함수로서 이름을 부여하지 않아도 되기 때문에 간단한 작업에 적합합니다. 코드 전체에서 한 번만 사용되거나 함수의 이름이 필요 없는 경우 유용합니다.

본 후기는 정보통신산업진흥원(NIPA)에서 주관하는 <AI 서비스 완성! AI+웹개발 취업캠프 - 프론트엔드&백엔드> 과정 학습 기록으로 작성 되었습니다

2개의 댓글

comment-user-thumbnail
2023년 8월 5일

잘 봤습니다. 좋은 글 감사합니다.

1개의 답글