Python 찍먹 - 설치, 자료형과 기본 연산

조해빈·2023년 1월 18일
0

짧은이론

목록 보기
3/23


맥OS이므로 파이썬이 이미 설치되어 있지만, 3.8.2 버전을 원하므로 사이트에 접속.

찾음.

다운.
(벨로그는 왜 이미지 슬라이드, 이미지 병렬 배치 지원이 안 되는 걸까? 빨리 개선됐으면...)
아래와 같이 실행함을 확인하려 했는데 이게 뭐지... 안 되서 재확인한다.

파이썬 플러그인을 설치하고 run phython File을 하니까 됐다.

아래와 같이 Hello, jungle이 프린트 됐다.

변수 선언에 let, const, var가 안 붙고 세미콜론;도 안 붙는다.

a = 3        # 3을 a에 넣는다
print(a)     # 콘솔창에서는 print() 함수를 쓰지 않고 '변수 이름만 적고' 실행해도 저장된 값을 볼 수 있습니다.
b = a        # b에 3을 넣는다.
print(b)
a = 5        # a에 5라는 새로운 값을 넣는다.
print(a, b)  # 5 3

자료형과 기본 연산

숫자형

자바스크립트와 동일.

a = 7
b = 2

a+b   # 9 
a-b   # 5
a*b   # 14
a/b   # 3.5
a//b  # 3 (몫)
a%b   # 1 (나머지)
a**b  # 49 (거듭제곱)

a+3*b # 13 (여러 연산을 한 줄에 할 경우 사칙연산의 순서를 따른다.)

변수에 저장된 값에 연산을 한 후 다시 그 값을 같은 변수에 저장할 수 있습니다. 자바스크립트와 다르게 증감연산자(i++, i-- 등)는 없습니다.

a = 5
a = a + 3 # 5에 3을 더한 값을 다시 a에 저장
print(a)  # 8

a += 1    # 줄여 쓸 수도 있다. 8에 1을 더해 9를 a에 저장. 사칙연산 다 가능하다.

문자열

자바스크립트와 동일. 따옴표로 감싸지 않으면 변수명으로 인식합니다.

a = 1
b = "a"
c = a
print(a, b, c) # 1 "a" 1

d = x          # x라는 변수가 정의되지 않았기 때문에 에러메시지가 나온다.
d = "x"

문자열 간의 더하기는 두 문자열을 이어붙인 문자열을 반환합니다.

first_name = "Harry"
last_name = "Potter"

first_name + last_name # HarryPotter
first_name + " " + last_name # Harry Potter

a = "3"
b = "5"
a + b    # 35 문자열 간의 덧셈이기 때문에 앞뒤로 이어붙인 문자열이 반환된다.

a + 5    # 파이썬에서는 문자열과 숫자형은 더할 수 없다
a * 5    # 33333 a*5는 a+a+a+a+a과 같으므로 "3"이 5번 반복되는 문자열이 반환된다.

다양한 연산 빌트인 메소드

  1. 모든 알파벳을 대문자로 바꾸기
myname = 'jungle'
myname.upper() # JUNGLE
  1. 특정 문자를 기준으로 문자열을 나누고 싶은 경우
# 이메일 주소에서 도메인 'gmail'만 추출하기
myemail = 'test@gmail.com'

result = myemail.split('@') # ['test','gmail.com'] (뒤에 배울 '리스트'라는 자료형이다)

result[0]    # test (리스트의 첫번째 요소)
result[1]    # gmail.com (리스트의 두 번째 요소

result2 = result[1].split('.') # ['gmail','com']

result2[0]    # gmail -> 우리가 알고 싶었던 것
result2[1]    # com

# 한 줄로 쓸 수도 있다.
myemail.split('@')[1].split('.')[0]      #gmail
  1. 특정 문자를 다른 문자로 바꾸기
txt = '서울시-마포구-망원동'
result = txt.replace('-', '>')  # '서울시>마포구>망원동'

불린

자바스크립트와 다르게 첫 글자가 대문자여야!

x = True   # 참
y = False  # 거짓

소문자로 쓰면 자료형으로 인식하지 않고 변수명이라 생각해 에러가 난다.

z = true   # name 'true' is not defined
# 비교연산자
4 > 2      # True  크다
5 < 1      # False 작다
6 >= 5     # True  크거나 같다
4 <= 4     # True  작거나 같다
3 == 5     # False 같다
4 != 7     # True  같지 않다

불 자료형에는 논리연산자를 이용할 수 있습니다.

a = 4 > 2  # True
not a      # False    NOT 연산자로 참을 거짓으로, 거짓을 참으로 바꿔준다.

b = 2!=2   # False

a and b    # False    AND 연산자로 모두 참이어야 참을 반환한다.
a or b     # True     OR 연산자로 둘 중 하나만 참이면 참이다.

리스트와 딕셔너리

파이썬의 리스트와 딕셔너리는 자바스크립트와 비슷합니다.
포인트만 정리하면,
1. 리스트명[i]['key'] = 'value' 구조.

people = [{'name':'bob','age':20},{'name':'carry','age':38}]

# people[0]['name']의 값은? 'bob'
# people[1]['name']의 값은? 'carry'
  1. 리스트 간의 덧셈, 리스트에 자연수 곱셈 가능.
a = [3, 3, 1]
b = [5, 2]

a + b  # [3, 3, 1, 5, 2]
a * 2  # [3, 3, 1, 3, 3, 1]
  1. 리스트명.append() 가능.
person = {'name':'john','age':7}
people.append(person)

# people의 값은? [{'name':'bob','age':20},{'name':'carry','age':38},{'name':'john','age':7}]
# people[2]['name']의 값은? 'john'
  1. 리스트 안에 [ [] , x ] 가능. 리스트명.length -> len(리스트명).
a_list = []
a_list.append(1)     # 리스트에 값을 넣는다
a_list.append([2,3]) # 리스트에 [2,3]이라는 리스트를 다시 넣는다

a_list  # [1,[2,3]]

len(a_list)    # 2 리스트의 길이

a_list[0]      # 1
a_list[1]      # [2,3]
a_list[1][0]   # 2
  1. 딕셔너리. 리스트랑 유사.
a_dict = {}
a_dict = {'name':'bob','age':21}
a_dict['height'] = 178

# a_dict의 값은? {'name':'bob','age':21, 'height':178}

# a_dict['name']의 값은? 'bob'
# a_dict['age']의 값은? 21
# a_dict['height']의 값은? 178

------

people = [{'name':'bob','age':20},{'name':'carry','age':38}]

# people[0]['name']의 값은? 'bob'
# people[1]['name']의 값은? 'carry'

person = {'name':'john','age':7}
people.append(person)

# people의 값은? [{'name':'bob','age':20},{'name':'carry','age':38},{'name':'john','age':7}]
# people[2]['name']의 값은? 'john'
profile
JS, CSS, HTML, React etc

0개의 댓글