[Python] Chapter1. 파이썬 기초(데이터 타입, 입출력, 연산, 조건식)

황성미·2023년 7월 5일
0
post-thumbnail
post-custom-banner

제로베이스 데이터 스쿨 OT 이후 첫 강의 수업이다.
오늘은 7월 4일과 5일 공부한 내용을 정리해보려 한다.

파이썬 설치부터 데이터 타입, 입출력, 연산, 조건식 등등에 대해 공부했는데 이미 알고있는 내용을 다시 정리하기보단, 강의를 들으면서 내가 잊고 있었던 부분/이건 꼭 기억해야겠다는 부분을 위주로 정리했다:)

파이썬 설치

제로베이스 데이터 스쿨에서는 먼저 PyCharm 을 설치하여 학습을 진행하고 있다.


어떤 분이 슬랙에 질문을 해주셔서 알게 된 사실인데,
파이썬 기초 문법과 프로그래밍 관점의 파이썬을 배우기 위한 1개월 차 때는 하나의 완성된 프로그램을 만드는 데 목적을 두고자 PyCharm을 사용하고
본격적으로 데이터 분석과 AI 개발을 배우는 2개월 차부터 종강 시까지는 Jupyter notebook을 쓴다고 한다!!



변수

프로그래밍에서 변수란 <데이터가 저장되어있는 메모리 공간>이다.

Age = 10

라고 한다면 컴퓨터 내의 메모리에 10을 저장하고 우리는 그것을 Age라고 부르기로 한 것이다.


자료형

정수형(int), 실수형(float), 문자(열)형(str), 논리형(bool)이 있다.
데이터 타입에 따른 메모리의 크기를 결정하기 위해 자료형을 구분짓고 있다.

정수와 실수의 차이점

정수는 메모리가 허용되는 한 제한이 없지만, 실수는 소수점 17-18번째 자리에서 짤려버린다.

자료형 변환

원하는 자료형으로 만들어 주기 위해 자료형을 변환할 때가 있는데 파이썬 함수를 사용해주면 쉽게 변환할 수 있다.

  1. 문자열로 변환 str(변수명)
  2. 숫자(정수, 실수)로 변환 int(변수명), float(변수명)
  3. 논리형으로 변환 bool(변수명)
    ※ 빈 문자('')를 논리형으로 변환하면 False가 나온다.
    논리형은 데이터가 있으면 True, 없으면 False이기 때문에 헷갈리지 말자!
    공백 문자(' ')는 ? -> True !!



데이터 입출력

input() 을 이용해 사용자에게 데이터를 입력받고,
print()를 통해 데이터를 출력한다.


입력

input() 을 이용해 입력한 데이터는 항상 문자(열) 자료형이다. 따라서 필요에 따라 자료형 변환 함수를 통해 변수를 생성해주어야 한다!

userInputData = int(input("나이를 입력하세요. : ")) #숫자형으로 입력 받음



출력

데이터를 출력하는 방법에는 총 4가지가 있다.

1. 콤마를 이용한 출력

print(’User name :, userName,, User age :, userAge)

이때 print()를 연속해서 사용하면 자동으로 다음줄(\n)에 결과가 나타나는데 그냥 바로 옆에 이어서 나타나게 하고 싶다면 아래와 같이 end = '' 를 사용하면 된다.

입력

print(3 * 5 =, end = ‘’)

print( 3 * 5)

출력

3 * 5 = 15

2. 포맷 문자열을 이용한 출력

print(f’User name : {userName} , User age : {userAge})

print할 문장 앞에 f를 붙이고 변수명은 {}로 감싸주면 된다.

3. format()함수를 이용한 출력

print(’User name : {}, User age : {}.format(userName, userAge))

입력할 문장을 쓰고 마지막에 .format() 을 붙여 들어갈 변수명들을 적어준다.
이때,

print(’User name : {0}, User age : {1}.format(userName, userAge))

같이 인덱스가 붙여져있고 해당 인덱스에 따라 변수들이 순차적으로 들어가는 것이다.
따라서 {} 안에 인덱스를 직접 적어주어 자유롭게 변수명을 출력할 수도 있다.


4. 형식 문자를 이용한 출력

%s 문자열, %d 정수, %f 실수

print(’User name : %s,  User age : %d’ % (userName, userAge))

입력할 문장을 쓰고 마지막에 % () 을 붙여 들어갈 변수명들을 적어준다. 이때 변수에 맞는 형식 문자를 적어주지 않으면 에러가 뜬다.

※ 소수점 자리수 정하기
%.2f , %.3f 과 같이 f 앞에 숫자를 적어 실수가 출력될 때의 소수점 자리수를 정해줄 수 있다.



연산

-산술 연산자 : +, -, *, /(나눗셈), %(나머지), //(몫), **(거듭제곱)

-할당 연산자 : =, +=, -=, *=, /=, %=, //=

-비교 연산자 : >, >= , < , <=, ==, !=

-논리 연산자 : and, or , not
import operator를 사용해서도 산술, 비교, 논리 연산자를 사용할 수 있다.

산술 연산자

  • 문자열들 또한 연산이 가능한데, 덧셈과 곱셈만 가능하다.
    문자열의 덧셈은 문자열들을 이어서 보여주고, 곱셈은 해당 숫자만큼 반복해서 보여준다.
  • 나눗셈의 결과는 항상 실수형이다.
  • divmod() 함수는 나머지와 몫을 한 번에 구해준다.
result = divmod(num1, num2) #튜플 형태

print(’result : {}.format(result))

print(’몫 : {}.format(result[0]))

print(’나머지 : {}.format(result[1]))
  • math 모듈의 sqrt(), pow() 함수
    import math 를 통해 사용할 수 있다. math.sqrt(2) 는 2의 2제곱근이며, sqrt() 는 항상 2제곱근만 구할 수 있어 다른 3, 4 제곱근을 구하기 위해선 2 ** (1/3) 을 기억하고 있어야 한다.
    math.pow(2,3) 2의 3 제곱.

할당 연산자

비교 연산자

연산의 결과는 bool 형태이다. 문자열도 아스키 코드를 이용하여 비교 연산을 할 수 있다.
문자를 숫자로 변환하고자 한다면 ord('A') , 숫자를 문자로 변환하고자 한다면 chr(65) 를 하면 된다.
문자열 또한 비교할 수 있는데, 한 글자라도 틀리면 False가 나오며 ==, != 연산자만 가능하다.

논리 연산자

연산의 결과는 bool 형태이다.




조건식

A if 조건식 else B

조건식의 결과가 True이면 A, False이면 B를 실행한다.

조건문

if문, if ~ else문, if ~ elif문 이 있다.

※ 모든 조건식은 if~ else문으로 변경할 수 있지만, 모든 if~else문은 조건식으로 변경할 수 있는 것은 아니다

if ~ : 
	pass
else :
	pass  #나중에 코딩하겠다는 의미로 pass를 사용하기도 함.

조건식의 2가지 사용 방법

  1. 조건식의 결과에 따른 실행만 하는 경우
A if 조건식 else B

조건식의 결과가 True이면 A, False이면 B를 실행한다.

  1. 조건식의 결과를 변수에 할당하는 경우
result = A if 조건식 else B

조건식의 결과가 True이면 A, False이면 B 가 result에 할당








오늘의 주저리

몇 주에 걸쳐서 배운 내용을 이렇게 단 시간에 리마인드해보니.. 처음 파이썬을 접했을 때 너무 힘들어했던 기억이 떠올랐어요ㅎㅎ.. '아 이 길은 내 길이 아닌가'라는 생각이 들며 절망한 적도 있지만, 계에속 실습해보고 반복해보니 프로그램이 성공적으로 작동되었을 때의 그 ⚡짜릿함⚡을 느낄 수도 있게 되었었죠. 저도 앞으로 제 꿈을 위해서 될 때까지 노력할테니 같이 으쌰!! 했으면 좋겠습니다:)

혹시 오타나 제가 잘못 알고 있는 내용이 적혀있다면 댓글로 남겨주시면 감사하겠습니다!! 🙇🏻‍♀️🙇🏻‍♀️

profile
데이터 분석가(가 되고픈) 황성미입니다!
post-custom-banner

0개의 댓글