[태그:] 파이썬 독학

  • 파이썬 독학 공부 05. f 문자열 포매팅과 소수점 표현하기

    파이썬 독학 공부 05. f 문자열 포매팅과 소수점 표현하기

    파이썬 f문자열 포매팅과 소수점 사용

    파이썬 독학 공부 05. f 문자열 포매팅과 소수점 사용. 문자열 자료를 출력하다 보면 문자열 중간에 변수를 삽입해야 하는 상황이 발생하는데, 문자열에 변수를 삽입하는 작업을 문자열 포매팅(Formatting)이라고 한다.

    이 포스트에서는 과거에 쓰던 문자열 포매팅 방법과 최신 버전에 사용하는 f 문자열 포매팅 둘 다 배워보겠다.


    파이썬 독학
    문자열 포매팅

    파이썬 구버전 포매팅

    구버전에 사용하던 문자열 포매팅 방법을 알아보겠다. 일단 문자열 중간에 변숫값을 삽입하려면 포맷 코드를 알고 있어야 한다. 변숫값이 숫자면 %d, 문자열이면 %s 포맷 코드를 변숫값이 들어가는 위치에 삽입하는 식이다.

    정수를 문자열에 삽입하려면, 변수 age에 23을 대입하고, age 값이 삽입되어야 하는 문자열에 %d를 삽입하고 문자열이 끝나면 %에 어떤 값이 올지 지정해 주면 된다. % age라고 입력한다. 문자열에 문자열을 삽입하는 방법도 동일하지만 %d가 아닌 %s로 표기한다. 변수 gender에 “남성”을 대입하고 출력 문자열에 gender 값이 삽입되어야 하는 위치에 %s를 삽입하고, 문자열 끝에 % gender라고 입력한다.

    만약 2개 이상의 변수값을 넣고 싶다면 문자열이 끝난다음 % 다음 괄호에 ( ) 각각의 변수명을 콤마 , 로 구분해 입력해주면 된다. 예를 들어 위와 같이 나이와 성별 변수를 둘 다 넣은 문자열을 출력하고 싶다면 문자열은 “내 나이는 %d이고 성별은 %s입니다.”로 입력하고, 문자열 끝에 변수명은 % ( age, gender )라고 입력하면 된다.


    파이썬 독학
    f 문자열 포매팅

    파이썬 f문자열 포매팅

    기존의 문자열 포매팅 방법은 크게 어렵진 않지만 정수와 실수, 문자열을 구분해서 포맷 코드를 입력해야 하는 불편함이 있다. 다행히 3.6 버전부터 f 문자열 포매팅이라는 기능을 사용할 수 있어 훨씬 이해하기 쉽게 문자열 포매팅을 할 수 있다. 방법은 위와 같이 문자열 앞에 f를 붙이고 변수가 들어가는 위치에 중괄호 { }를 사용해 변수 이름을 쓰면 된다.

    예를 들어 문자열에 나이를 변수로 사용하고 싶다면, 변수 age를 만들고 23을 대입한 다음 문자열을 f ” 내 나이는 { age }입니다.” 라고 작성하면 된다. 즉 변수의 값이 정수든 실수든, 문자열이든 2개든, 3개든 방법이 동일하기 때문에 포맷 코드를 사용하는 것과 비교하면 훨씬 쉽게 이해할 수 있다.


    파이썬 독학
    소수점 표현하기

    파이썬 소수점 표현하기

    문자열 포매팅을 할 때 추가로 알아둬야 하는 것은 바로 소수점을 표현하는 방법이다. 만약 수학 30점, 영어 50점, 국어 60점의 점수를 받았다고 해보자. 평균 점수를 구하려면 점수를 다 더하고 3으로 나누면 된다. 변수 average를 만들어 이를 대입한다.

    구버전 기준으로 출력할 때 포맷 코드로 %d를 입력하면 평균 점수는 46점만 출력하게 된다. 왜냐하면 %d는 정수를 삽입하는 코드이기 때문이다. 이번에는 실수를 삽입하는 %f를 넣으면 평균 점수가 46,666667점이 나온다. 소수점은 기본적으로 6자리가 표현된다. 따라서 소수점 자릿수를 컨트롤해야 한다. 방법은 간단하다. 소수점 2자리만 표현하고 싶으면 %.2f라고 입력하면 된다. 소수점 4자리만 표현하고 싶으면 %.4f라고 입력하면 된다.

    파이썬 소수점 표현하기

    이번엔 f 문자열 포매팅에서 소수점을 표현하는 방법에 대해 알아보겠다. 위와 같이 변수 average를 특별한 통제 없이 f 문자열 포매팅시키면 소수점이 어마어마하게 많이 나온다. 소수점을 컨트롤하고 싶다면 중괄호 변수 이름 뒤에 콜론 : 으로 구분한 다음 원하는 소수점 자리수와 f를 입력해주면 된다.

    예를 들어 소수점 2자리만 표현하고 싶다면 위와 같이 { 변수 : 0.2f } 라고 입력하면 된다. 참고로 0은 생략해도 된다.


    추천 포스트

    문자열 인덱싱과 슬라이싱
    링크: https://k-man.kr/2356

    문자열 자료형과 문자열 연산
    링크: https://k-man.kr/2318

  • 파이썬 독학 강의 02. 정수형 실수형 숫자 자료형과 산술 연산자

    파이썬 독학 강의 02. 정수형 실수형 숫자 자료형과 산술 연산자

    파이썬 독학 숫자형 자료와 산술 연산자

    파이썬 독학 강의 02. 숫자형 자료와 산술 연산자. 오늘은 내용은 숫자형 자료의 종류와 산술 연산자에 대해 배워보겠다. 지난번 강의에 이어 이번 내용도 쉬우니 가볍게 잘 따라올 수 있을 것이다.


    파이썬 독학
    숫자형 자료

    파이썬 숫자형 자료

    숫자형 자료는 숫자로 된 형태의 자료다. 크게 1, 2, 3, 0, -1, -2, -3 같은 정수형이 있고 1.5, -4.6 같은 소수점이 있는 실수형이 있다. 그리고 잘 사용하지 않지만 8진수나 16진수 등도 숫자형 자료이다.

    파이썬 숫자형 자료

    type 함수에 3을 넣으면 <class ‘int’>로 분류하지만, type 함수에 3.5를 넣으면 <class ‘float’>로 분류한다. float는 실수형(Floating-point)의 준말이다.


    파이썬 독학
    산술 연산자

    파이썬 산술 연산자

    연산자란 보통 숫자형 자료의 연산을 위해 사용되는 부호(수학기호)를 말한다. 변수를 공부하면서 우리는 대입 연산자(=)를 배웠는데 그 외에 계산기에서 볼 수 있는 여러 종류의 산술 연산자가 있다. 의미야 한눈에 봐도 쉽게 알 수 있지만 공부를 하는 차원에서 하나씩 입력해 보겠다.

    파이썬 산술 연산자

    일단 변수 a를 만들고 10을 대입한다. 다음으로 변수 b를 만들고 3을 대입한다.

    더하기 연산자 +를 사용해 변수 a와 변수 b를 더하면 13이 나온다.

    빼기 연산자 를 사용해 변수 a와 변수 b를 빼면 7이 나온다.

    곱하기 연산자 *를 사용해 변수 a와 변수 b를 곱하면 30이 나오고,

    나누기 연산자 / 를 사용해 변수 a와 변수 b를 나누면 3.3333333333333335이 나온다. 여기까지는 일반적인 계산기와 크게 다르지 않다.

    파이썬 산술 연산자

    다음으로 동일한 변수에 제곱 연산자와 나누기 몫, 나머지 연산자를 사용해 보겠다.

    변수 a에 변수 b를 제곱 연산자 ** 를 사용하면 1000(10x10x10)이 된다.

    나누기 연산자 /를 사용하면 실수까지 계산되는데 정수가 필요할 때가 있다. 이때 나누기 몫 연산자 //를 사용하면 된다. 변수 a에 변수 b를 나누기 몫 연산자 //를 사용해 계산하면 정수인 3이 나온다.

    마지막으로 나머지 연산자 %는 나누기 한 다음 남은 나머지를 결과로 보여주는 연산자다. 변수 a에 변수 b를 나머지 연산자로 계산하면 1이 나온다. 10/3=3, 10-9(3*3)=1

    아직까지는 파이썬 독학에 큰 어려움이 없다. 내 생각에 파이썬은 문자열 자료형부터 조금 난해지기 시작하는 것 같다. 문자열은 다음 포스트에서 다루도록 하겠다.


    추천 포스트

    파이썬 독학을 위한 기본 개념과 용어 정리
    링크: https://k-man.kr/파이썬-기초-독학-개념-용어-정리

    파이썬 함수와 변수, 그리고 자료형의 개념
    링크: https://k-man.kr/2073

error: Content is protected !!