Python 기초(1)

백동윤·2025년 11월 15일

Python

목록 보기
1/17
post-thumbnail

주석: 코드에 대한 설명이나 메모를 위해 작성하는 텍스트

--> 프로그램 실행에는 전혀 영향을 주지 않음

사용목적

  • 코드의 의도나 기능을 설명하여 다른 사람(또는 미래의 나)이 이해하기 쉽도록 도움
  • 일시적으로 코드를 비활성화할 때 사용

#: 한 줄 주석
ctrl + / --> 주석해제 또는 주석
여러줄 주석("""도 동일함.)

출력: print 함수

--> 파이썬에서 문자열, 숫자, 변수 등의 값을 콘솔(표준 출력)에 출력하는 내장 함수
사용목적

  • 사용자에게 메시지를 전달하거나, 변수의 값 등을 출력할 때 사용
  • 디버깅 시 코드 흐름을 추적하거나 값 확인용으로 매우 자주 사용

print("Hello, world!")

print 구분자 옵션
sep: 기본값은 공백이다.
print("가", "나", "다", sep = "-")

print의 줄바꿈 옵션
end
print("안녕하세요.", end = " ") # 공백으로 연결되어 줄바꿈이 됨. print("반갑습니다.")

변수 선언: 변수를 처음으로 만드는 것

  • 변수: 자료를 저장하는 공간
  • 선언: 변수를 만드는 것
  • 할당: 변수에 값을 저장하는 것
  • 초기화: 처음으로 변수에 값을 할당하는 것
  • =: 대입 연산자(assignment operator), 같다는 의미가 아닌, 값을 할당한다는 의미

변수의 선언과 할당 --> 동시에 해야 함.
변수이름= "저장할 자료값"
print(변수이름)

식별자(identifier): 변수, 함수, 클래스 등 이름을 붙일 수 있는 요소의 이름

  • 영문자, 한글, 숫자, 밑줄(_) 사용가능
  • 띄어쓰기를 포함할 수 없음
  • 숫자로 시작할 수 없음
  • 대소문자 구분
  • 예약어(keyword)는 사용불가

파이썬의 예약어: if, else, True, False, ...

변수 이름 규칙

1st_place = "Gold" first_place = "Gold"
예약어(keywords) 사용x

식별자 작성 스타일

  • 스네이크 케이스: 모든 단어를 _로 연결 ex) 변수, 함수, 상수
  • 파스칼 케이스: 모든 단어의 첫 글자를 대문자로 시작 ex) 클래스
  • 카멜 케이스: 첫 단어는 소문자, 이후 단어는 대문자로 시작 ex) 변수, 함수명

변수의 특징

  • 변수에 할당된 값을 바꿀 수 있음(재할당 가능)
    --> 파이썬은 동적 타입 언어이므로, 재할당 시 자료형도 바꿀 수 있음

  • 변수에는 하나의 값만 저장 가능: 새로운 값을 할당하면 이전 값은 사라짐

hello = "안녕하세요" hello = "반갑습니다" hello = 1 print(hello)

  • 한 줄에 여러 변수
    `a = 1
    b = 2
    c = 3 # a, b, c에 각각 1, 2, 3을 할당
    a, b, c = 4, 5, 6 # 다시 a, b, c에 각각 4, 5, 6을 할당

print(a, b, c) # a, b, c를 출력

x = 10
y = 20 # x, y에 값을 할당

x, y = y, x # x, y에 할당한 값을 서로 x는 y에, y는 x에 각각의 값을 할당
print(x, y) # 그 할당한 값을 출력`

======================================================

자료형(Data type)

변수에 저장되는 데이터의 종류와 구조를 정의하는 것

정수형 (int, integer)

크기 제한이 없다
my_int1 = 100; my_int2 = 10909090909090909090909090909090; print(type(my_int1)) # <class 'int'>

실수형(float)

부동 소수점 방식
my_float = 100.0 print(type(my_float)) # <class 'float'>

문자열(str, string)

my_str1 = '' # 빈 문자열 my_str2 = " " # 공백 문자열 my_str3 = "안녕하세요"

문자열 여러줄로 만들기

`multi_str = """
코딩을 하는 처음 배우는 파이썬 언어
"""

print(multi_str)
print(type(multi_str)) # <class 'str'>`

따옴표 속에 따옴표 쓰기

print("'python'코딩언어") # 'python'코딩언어 print('"python"코딩언어') # "python"코딩언어, print(''python'코딩언어') --> Error

불리언형, 논리형(참, 거짓 또는 1, 0) (bool, boolean)

참과 거짓을 표현하는 자료형

print(True) print(False) print(type(True)) # <class 'bool'>

형 변환(Type casting): 하나의 자료형을 다른 자료형으로 변환하는 것

명시적 형변환 vs 암시적 형변환
  • 정수로 변환: int()
  • 실수 -> 정수
  • 문자열로 표현된 정수 -> 정수
  • 논리형 -> 정수
가능한 경우

print(int(3.14)) # 3 print(int("100")) # 100 print(int(True)) # 1 print(int(False)) # 0

불가능한 경우

print(int("3.14")) # 실수 문자형 print(int("Hello")) # 문자열 print(int("abc"))

실수로 변환: float()

  • 정수 -> 실수
  • 문자열로 표현된 실수 -> 실수
  • 문자열로 표현된 정수 -> 실수
  • 논리형 -> 실수
가능한 경우

print(float(7)) print(float('3.14')) print(float('10000')) print(float(True), float(False))

불가능한 경우

print(float("abc")) # 숫자가 아닌 문자열은 불가능하다.

문자열로 변환: str()

논리형으로 변환: bool()

print(bool(1)) # True print(bool(0)) # False

암시적 형변환

정수와 실수의 연산에서 자동으로 실행되는 연산
print(10 + 5.0) # 15.0

문자열 포맷팅 (f-string)

문자열 안에 변수를 쓸 수 있도록 해주는 기능

name = "Dongyun"
age = 26

print("내 이름은", name, "이고, 나이는", age, "입니다.")
print(f"내 이름은 {name}이고, 나이는 {age}입니다.")

실습1. 영화정보 출력하기

movie, director, year, genre = "Now You See Me: Now You Don't", "Ruben Fleischer", 2025, "Crime/Thriller"
print(f"Title: {movie} Director: {director} Year: {year} Genre: {genre}")

결과

실습2. 자기소개 하기

name, age, MBTI = "Dongyun", 26, "INTP"
print(f"안녕하세요.\n제 이름은 {name}이고,\n{age}살 입니다.\n제 MBTI는 {MBTI}에요.")

결과

====================================================================================

연산자

값과 값 사이에 연산을 수행하는 기호 또는 키워드

항: 연산자의 좌우에 위치하여 연산의 대상이 되는 값

연산자의 종류

  • 산술 연산자
  • 비교 연산자
  • 논리 연산자
  • 대입 연산자

산술 연산자

사칙연산을 포함한 수학 연산 수행
+, -, *, /, //, %, **

비교 연산자

  • 두 값을 비교하는 연산 수행
  • 결과는 True or False 반환
    ==, !=, >, <, >=, <=, ||

논리 연산자

  • 논리에 대한 연산 수행 --> (True, False)
  • and, or, not

산술 연산자 코드

print("더하기", 10 + 3)
print("빼기", 10 - 3)
print("곱하기", 10 * 3)
print("나누기", 10 / 3)
print("몫", 10 // 3)
print("나머지", 10 % 3)
print("거듭제곱", 10 ** 3)

변수의 값을 변경
x = 10

x에 5를 더한다면?

x = x + 5

print(x)# 15가 출력

복합 대입 연산자

x = 10
x += 5

print(x)

y = 10
y -= 5
print(y)

z = 10
z *= 5
print(z)

w = 10
w /= 5
print(w)

실습1. 대학생의 용돈 관리

a = 300000
a -= 80000
a -= 9000*5
a += 120000
a += a * 0.2
a -= a * (1/3)

print(a)

print(f"""
      시작 용돈은 {x1}만원 입니다.
      개강 첫 주에 책을 사느라 {x2}만원을 썼습니다.
      평일 점심값으로 매일 {x3}천원씩 {x4}일간 사용했습니다.
      과외 아르바이트를 하며 {x5}만원을 벌었습니다.
      부모님을 용돈을 더 주셔서 현재 금액의 {x6}%를 추가로 받았습니다.
      하지만 전기요금 등 공과금으로 남은 돈의 {x7}이 빠져나갔습니다.

      >>>결과 {x8}만원
      """)

결과

산술 연산

  • 문자열 연결: + 연산자 --> 문자열을 이어 붙이는 기능을 함
  • 문자열 반복: * 연산자 --> 문자열을 곱하는 정수만큼 반복함
  • 문자열, 숫자간 다허기 및 나누기는 연산 불가

문자열 연산

  • +: 문자열 결합
print(100 + 200) # 300
print("100" + "200") # 100200
  • *: 문자열 반복
hi = "Hi!"
print(hi * 3)
  • /, - 등은 지원하지 않는다.

실습2. EDM 리듬 트랙 만들기

intro = "둠칫"
drop = "두둠칫"
print(intro + intro + intro + (intro + drop + intro + drop) * 5)

결과

느낀점

아직 파이썬의 기초를 배우고 있어서 큰 문제는 없다. 그리고 다른 프로그래밍 언어와 비교했을때 파이썬이 가장 코드가 간결하다는 것을 느꼈다. 하지만 쉽다고 간과해선 안된다 생각이 든다. 기초가 가장 중요하다.

profile
동윤2입니다.

0개의 댓글