개요
- 변수선언
- 기본 연산자
- 데이터 타입
- 함수
- 컨테이너
- 조건문, 반복문
- 내장함수, 외장함수
- 라이브러리 활용
1. 변수 선언
x = 3 # 변수명 = 값
- 좌변: 변수명
- 우변: 변수에 할당할 값
- 메모리 공간에
x
라는 공간의 이름을 지정하고, 그 공간에 9라는 데이터를 넣는것
그렇다면, ==
이건뭔가?
== 은 같느냐?
라고 물어보는것과 같다.
print( x == 9) # False
즉 9 와 같냐? 라고 물어보는것이다.
type 함수로 타입 확인
type(x) # 데이터 타입을 알 수 있다
# <class 'str'>
2. 기본 연산자
더하기, 빼기, 곱하기, 몫, 나머지, 제곱근
# 더하기 후 할당
x = x + 1
# 주의
# x + 1 은 x 에 1을 더한다는것이 아니다!
# 빼기
x = x - 1
# 몫
x = x / 2
# 나머지
x = x % 2
# 제곱근
x = x ** 2
데이터 타입
부동 소숫점(Floating-point numbers)
y = 2.5
type(y)
# float
# y (부동 소숫점을 숫자로 바꾸고 싶으면?)
int(y)
# 2 (정수형이니까 소숫점이하가 사라진다)
float(y)
# 2.0
문자열 (string)
s = "Hello" # 그룹형 변수
type(s)
# str
# 길이 반환
len(s)
# 대분자
s.upper()
# 소문자
s.lower()
# 포맷팅
print("My name is {} and my age is {}".format("Groot", 32))
sentence = "My name is {}"
sentence.format("Groot")
f-string
- 3.6 버전부터 도입된 문자열 포매팅 방식
- 문자열 앞에 'f' 또는 'F'를 붙이고, 중괄호 {} 안에 변수나 표현식을 넣어서 사용
이름 = "철수"
나이 = 20
# 기본적인 f-string 사용
print(f"안녕하세요, 제 이름은 {이름}이고 {나이}살입니다.")
# 출력: 안녕하세요, 제 이름은 철수이고 20살입니다.
# 표현식 사용
print(f"내년에는 {나이 + 1}살이 됩니다.")
# 출력: 내년에는 21살이 됩니다.
# 소수점 자릿수 지정
원주율 = 3.14159
print(f"원주율은 {원주율:.2f}입니다.")
# 출력: 원주율은 3.14입니다.
그룹형 타입 index 접근
temp = "Python"
temp[1]
temp[3]
temp[0]
# 범위 접근
temp[0:4] # 0 이상 4 미만
# "시작: " 두번째 인자가 없으면 마지막까지 return
temp[4:] # python
# 마지막부터 탐색은 -1
temp[-1]
4. 함수
정의
def
키워드를 사용
기본 구조
def 함수명(parameters...):
... # 함수스코프 영역은 탭으로 구분
return ...
호출
dev add_nums(num1, num2):
result = num1 + num2
return result
# 호출
add_nums(1,2) # 3
Parameter 초기값 지정
def 함수명(num1, num2=10)
함수명(1) # 파라미터는 1 과 기본값은 10이 지정된다.
컨테이너
컨테이너란?
다른 변수들을 담을 수 있는 자료형
종류
- list
- 순서가 있음
- 수정 가능 (mutable)
- 표기: [1,2,3] 처럼 대괄호 표현
- dict
- 키-값 쌍 해시 테이블
- 표기:
{'key': 'value', ...}
컬렉션
- tuple
- 순서가 있음
- 수정 불가능(immutable)
- 표기:
(1, 2, 3,..)
소괄호로 표현
- set
- 순소가 없음
- ==중복을 혀용하지 않음==
- 표기
{1, 2, 3}
중괄호 표현
코드 활용
# List 예시
numbers = [1, 2, 3, 4, 5]
numbers.append(6) # 추가: [1, 2, 3, 4, 5, 6]
numbers[0] = 10 # 수정: [10, 2, 3, 4, 5, 6]
del numbers[1] # 삭제: [10, 3, 4, 5, 6]
# Dictionary 예시
person = {
"name": "김철수",
"age": 25,
"city": "서울"
}
person["job"] = "개발자" # 추가
person["age"] = 26 # 수정
del person["city"] # 삭제
# Tuple 예시 (수정 불가능)
coordinates = (10, 20)
nested_tuple = (1, (2, 3), "hello")
x, y = coordinates # 언패킹
# coordinates[0] = 5 # 에러! 튜플은 수정 불가능
# Set 예시
fruits = {"사과", "바나나", "딸기"}
fruits.add("오렌지") # 추가: {"사과", "바나나", "딸기", "오렌지"}
fruits.remove("바나나") # 삭제: {"사과", "딸기", "오렌지"}
# 중복 제거 예시
numbers = [1, 2, 2, 3, 3, 3]
unique_numbers = set(numbers) # {1, 2, 3}
조건문, 반복문
종류
- if
- for
- while
if
def check_price(lunch_price):
if lunch_price > 10000:
price_label = "프리미엄 도시락"
elif lunch_price < 1000:
price_label = "초저렴이 도시락"
elif lunch_price < 3000:
price_label = "저렴이 도시락"
else:
price_label = "무난무난 도시락"
return price_label
표현법
if {조건} :
...코드...
elif {조건}: # 추가 조건
...
else:
... # 이외 조건 모두
if 예시 코드
cage = ['Cat', 'Dog', 'Tiger']
if 'Cat' in cage: # Key 유무 체크
print('야옹아 이리온')
if 'Dog' in cage.keys(): # Key 유무 체크
print('치와와는 언제와')
if 1:
print('1 is True')
if [1]:
print("T")
if []: # false 이다
print("T")
for
기본구조
for something in 그룹형변수:
~~~ (something) ~~~
예시코드
nums = [1, 2, 3, 4, 5]
for number in nums:
print(number)
# 출력
#1
#2
#3
#4
#5
cage = {'Cat': '야옹', 'Dog': '멍멍', 'Tiger': '어흥'}
for item in cage.items(): # values + keys = items
print(item)
# ('Cat', '야옹')
# ('Dog', '멍멍')
# ('Tiger', '어흥')
range(0,5)
활용법
for index in range(5):
print(index)
# 0
# 1
# 2
# 3
# 4
for i in range(0, 100, 10): # max | min max | min max step
print(i)
while
기본 코드
temp = 1
while temp <= 10: # 10보다 크면 정지한다.
print(temp)
temp = temp + 1 # temp 를 1 증가시켜주려면?
내장함수, 외장함수
길이 함수 : len
len('python')
# 6
절대값 abs
abs(-1.2) # '절대값'의 앞 3글자
# 1.2
반올림 round
round(1.7) # 반올림
# 2
라이브러리 활용
%%writefile module_example.py
# @ module_example.py
def print_something() :
print('Hello world!')
def sum_nums(num1, num2) :
result = num1 + num2
return result
import module_example # 모듈 import
module_example.print_something() # 모듈 함수 실행
외부 라이브러리
import numpy # import 라이브러리이름
a = numpy.array([1, 2, 3])
a
from numpy import array, ndarray # from 라이브러리이름 import 함수이름 [권장하지 않음]
pip 명령어 살펴보기
# cmd 에서 입력해 결과를 확인해보세요.
pip freeze
pip freeze > requirements.txt # -> pip install -r requirements.txt
# (디렉토리 이름들로 표시될 경우) pip list --format=freeze
pip show numpy
pip uninstall numpy (주의)
pip install numpy==1.19.5 (주의)
pip download django
각 pip 명령어의 역할을 설명해드리겠습니다:
pip freeze
- 현재 환경에 설치된 모든 파이썬 패키지와 그 버전을 보여줍니다
- 출력 형식:
패키지명==버전
pip freeze > requirements.txt
- 설치된 패키지 목록을 requirements.txt 파일로 저장합니다
- 프로젝트 환경을 다른 곳에서 재현할 때 사용
pip install -r requirements.txt
명령어로 이 파일에 명시된 모든 패키지를 한번에 설치할 수 있습니다
pip list --format=freeze
- pip freeze와 비슷하지만, 디렉토리 형태로 표시될 때 패키지명==버전 형식으로 강제로 보여줍니다
- 더 깔끔한 출력을 원할 때 사용
pip show numpy
- numpy 패키지의 상세 정보를 보여줍니다
- 버전, 설치 위치, 의존성 등의 정보 확인 가능
pip uninstall numpy
- numpy 패키지를 제거합니다
- 주의: 다른 패키지가 이 패키지에 의존하고 있을 수 있습니다
pip install numpy==1.19.5
- numpy의 특정 버전(1.19.5)을 설치합니다
- 주의: 버전 호환성 문제가 발생할 수 있습니다
pip download django
- django 패키지 파일을 현재 디렉토리에 다운로드만 하고 설치는 하지 않습니다
- 오프라인 설치를 위해 패키지 파일만 받을 때 사용
colab
- 단점 매번 라이브러리 인스톨해야됨
- 링크
- https://colab.research.google.com/github
- 확장프로그램: Open in Colab
회고
- 파이썬 변수 선언부터 데이터 자료형에 대해 알아봤다.
- 함수 선언에 대해 알아보았다.
- if, while 등 자주 사용하는 함수에 대해 알아보았다.
- 패키지 import 방법과 설치방법을 알아보았다.
- requirements 관리 커맨드
- colab에 대해 간단하게 알아 보았다.
'프로그래밍 > AI' 카테고리의 다른 글
아나콘다란? (1) | 2024.11.22 |
---|---|
서울시 범죄현황 통계자료 분석 및 시각화 (0) | 2024.11.19 |
Pandas 기본 문법 (1) | 2024.11.19 |
머신러닝을 위한 데이터 - 종류, 수집, 활용 (2) | 2024.11.19 |
마인드셋 (0) | 2024.11.16 |