파이썬2021. 3. 31. 13:36
728x90

공백을 기준으로 문자열을 받는 다음의 코드에 익숙해졌다.

 

a,b=input().split()

 

 

그러다 엔터(\n)를 기준으로 문자열을 받는 문제에서 헷갈리게 되었다.

a,b=input().split('\n') 를 입력해봤지만 작동하지 않았다.

 

하지만 다시 생각해보니 그냥 하나씩 입력받으면 되는 거였다..

 

[결론]

엔터를 기준으로 문자를 입력받고 싶으면 input 두 번 하자!

a=input()
b=input()

 

 

[ 연관 문제 ]

백준 사분면 문제 이다.

www.acmicpc.net/problem/14681

 

14681번: 사분면 고르기

점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다.

www.acmicpc.net

 

[ 해결 코드 ]

a=input()
b=input()
a=int(a)
b=int(b)

if(a>0 and b>0):
    print('1')
elif(a<0 and b>0):
    print('2')
elif(a<0 and b<0):
    print('3')
else:
    print('4')

 

 

반응형
Posted by mminky
파이썬2021. 3. 30. 07:34
728x90

우선 아나콘다 프롬프트를 실행한다.

 

 

cd 명령어를 이용해 원하는 폴더로 이동한다.

이 폴더에서 저장되고 동작되기 때문에 빈 폴더를 추천한다!

 

 

주피터 노트북을 입력하면 자동으로 실행된다.

 

jupyter notebook

 

 

 

인터넷 창이 하나 실행되면서 주피터 노트북이 실행된다.

코드 파일(.ipynb)과 폴더 안에 들어있는 여러 파일들이 보인다.

 

Untitled.ipynb 파일을 클릭한 후 다음과 같이 코드를 입력한다.

실행은 간단히 ctrl + Enter를 누르면 한 줄씩 실행이 된다.

 

상단에 있는 버튼들로 셀 추가/ 삭제가 가능하다.

( + ) : 코드 셀 추가

( 가위 ) : 코드 셀 삭제

 

반응형
Posted by mminky
파이썬2021. 3. 24. 15:03
728x90

* 3항 연산자

x if ~ else y : ~ 이면 x를, 그렇지 않으면 y를 이용한다.

 

a,b=input().split()
a=int(a)
b=int(b)
c=(a if(a>=b) else b) #큰 수를 c에 저장
print(int(c))

큰 수인 273이 나온다

(참고 : codeup.kr/problem.php?id=6063 )

 

반응형
Posted by mminky
파이썬2021. 3. 17. 14:55
728x90

* 주석

[한 줄 주석]

#을 입력하면 된다.

 

#한 줄 주석 입니다

 

한 줄만 주석처리

[여러 줄 주석]

''' 을 입력하면 된다.

 

'''
파이썬
여러 줄
주석 입니다.
'''

 

 

* 따옴표 출력

escape 문자 \(역슬래쉬)을 이용한다.

출력을 원하는 '나 "나 \ 앞에 \을 붙인다. (\'나 \"나 \\)

 

'Hello World'를 그대로 출력하고 싶으면 다음과 같이 '앞에 \를 붙이면 된다.

print(" \' Hello World \' ")

 

print("\'Hello World\'")

 

 

\을 출력하고 싶으면 역시 \\ 이렇게 입력하면 된다.

"C:\Download\'hello'.py"를 그대로 출력하고 싶으면 다음과 같이 입력하면 된다.

 

print('\"C:\\Download\\\'hello\'.py\"')

 

 

* 키보드 input

a = input()하면 키보드로 입력을 받아 a라는 변수에 저장한다.

 

input은 줄 단위로 받아들인다.

따라서 a,b=input().split()을 하면 aa bb라는 입력에서 공백을 기준으로 나눠서

a = aa, b= bb이렇게 입력을 해준다.

 

a,b=input().split()
print(a)
print(b)

 

 

* 16진수로 바꾸기

print('%x'%바꿀숫자) 소문자로 출력

 

#우선 a를 키보드 입력받은 후 정수로 변환
a=int(input())

#a에 저장되어있는 값을 heXadecimal(16진수) 소문자 형태로 출력
print('%x'%a)

 

 

print('%X'%바꿀숫자) 대문자로 출력

 

print('%X'%a)
#a에 저장되어있는 값을 heXadecimal(16진수) 대문자 형태로 출력

 

 

* 비트연산자 shift

<< : 2배 곱하기

>> : 2로 나누기

 

 

비트연산자를 이용해서 *2 하기

a= input()
print( int(a) << 1 )

 

(참고 codeup.kr/problem.php?id=6046 )

 

반응형
Posted by mminky
파이썬2021. 3. 10. 14:21
728x90

[ 파일에 쓰기 ]

 

f=open('hello.txt','w') #write모드
f.write('Hello Python')
f.close()

 

파이썬 파일이 있는 위치에 hello.txt가 생성됩니다.

직접 클릭해서 열어보면 다음과 같이 적혀있는 것을 확인할 수 있습니다.

 

[ with ~ as 문으로 파일에 쓰기 ]

 

위의 방법으로 하기 위해서는 f.close()가 필수 입니다.

하지만 귀찮기도 하고 까먹을 수도 있으니

f.close()를 하지 않아도 되는  with~ as 문을 알아보겠습니다.

 

with open('hello.txt','w') as f:

 

f=open('hello.txt','w')

f.close() 를 동시에 하는 코드라고 생각하면 쉽습니다.

with open('hello.txt','w') as f:
    f.write('hello Python!!')

 

결과도 똑같이 파일에 입력됩니다!

 

 

* 단, write 안에는 string만 가능합니다!

그래서 str()을 이용해서 type을 변경한 후 f.write를 해주세요!

 

[ 예제 ]

파일에 출력(Write) 하는 파이썬 코드 입니다.

file.out이라는 파일에 w(rite)모드로 answer을 string(문자열)로 쓰는 코드 입니다.

answer='hello world'
with open('file.out', 'w') as f:
    f.write(str(answer))

 

이런 식으로 file.out 이라는 파일이 생성됩니다.

 

확장자를 .txt로 변경하여 내용을 확인해봅니다.

 

 

[ 파일에서 한 줄씩 읽기 ]

전체를 읽기 위해서는 f.read()를 이용합니다.

하지만 한 줄씩 읽기 위해서는 f.readline()을 이용합니다.

 

numbers.txt

 

f=open('numbers.txt','r')
s=f.readline()
print(s)
s=f.readline()
print(s,end='')
s=f.readline()
print(s,end='')

f.close()

 

* 결과

print(s,end='')에서 end=''을 하는 이유는 두 줄 사이에 띄워쓰기를 하지 않기 위함인 것 같습니다.

(따라서 BBB와 CCC는 바로 다음줄에 출력됩니다.)

반응형
Posted by mminky
파이썬2021. 3. 8. 15:43
728x90

* 몫

9를 4로 나눴을 때의 몫은 2이다. ( 9 = 4*2 +1 )

9//4

 

 

* 나머지

9를 4로 나눴을 때의 나머지는 1이다. ( 9 = 4*2 + 1 )

9%4

 

* 합

1부터 5까지의 합은 다음과 같이 구한다.

sum([1,2,3,4,5])

 

 

* 원 넓이, PI 값

반지름이 5인 원의 넓이를 구하는 방법이다.

 

이때, math의 PI를 import하는 방법이 두 개가 있다.

 

(방법1)

math를 해주기 때문에 math.pi 를 해야 한다.

>>> import math
>>> area=math.pi*5*5

 

(방법 2)

pi를 import 해주기 때문에 바로 pi 를 이용할 수 있다.

>>> from math import pi
>>> area=pi*5*5

 

* 지수 승 (a ^ n)

2^3 을 구하기 위해서는 2**3을 해줘도 된다.

하지만 math를 이용하기 위해서는 다음과 같이 pow를 이용해주면 된다.

math.pow(2,3)

 

* 루트 (√2)

( 루트2 를 구하기 위해서 2**0.5 를 해줘도 상관은 없다. )

math.sqrt(2)

 

 

* 자연로그 ln(x)

math 라이브러리에서는 그냥 log가 ln이다. (밑이 e)

math.log(2)

 

* 상용로그 log(x)

밑이 10인 상용로그는 다음과 같이 구한다.

math.log10(10)

 

* 밑이 특정한 로그

밑이 2인 로그에 4를 넣은 값은 다음과 같이 구한다.

log2(4)

math.log(4,2)

 

* sin

역시 math.sin을 이용하면 정확하게 나온다.

math.sin(30)

 

* degreee(도) 에서 radian(라디안) 으로 변경

math.radians() : degree -> radian 으로 변경

 

math.radians(30)

 

 

* 반올림

round를 이용한다.

round(숫자,반올림할자리수)

 

다음은 √3을 반올림해서 소수 둘째자리 까지 표현하는 예시이다.

 

둘째 자리 까지 반올림 됨

 

 

 

 

[ 연습문제 ]

 

* 환율구하기

>>> currency = 1112.39
>>> dollar = 3
>>> won = dollar * currency
>>> won
3337.17

 

* 대출 첫 달 이자 구하기

8000만원 대출 시 첫 달 이자(금리 1.72%)

 

빌린금액(loan) = 8000,0000

금리(interest rate) = 0.0172

첫 달 이자(first_mon) = 빌린금액 * 금리 / 12  (1년은 12달)

>>> loan = 80000000
>>> int_rate = 1.72/100
>>> first_mon = loan * int_rate / 12
>>> first_mon
114666.66666666667

 

반올림을 통해서 1의자리까지 표시

따라서 첫 달 이자는 114,667(약 11만원)

>>> round(first_mon)
114667

 

* 연복리 예금 만기 금액 구하기

정기예금 이자 2.7%, 3년 연복리 상품, 2000만원 예금시 만기 금액

 

예금액(deposit) = 2000,0000

이자율 = 0.027

기간 = 3년

 

만기금액 = 예금액 * (이자율 + 1) ^3

            = 2000,0000 * (1+0.027) * (1+0.027) * (1+0.027)

(1년이 지날 때 마다 이자가 붙는 형식이므로 원금+이자율을 3번 곱해줍니다.)

>>> deposit = 20000000
>>> int_rate = 2.7 / 100
>>> year = 3
>>> deposit * (int_rate+1)**3
21664133.659999996

 

※ 제 글이 도움이 되었다면 공감 부탁드려요 ◡̈

반응형
Posted by mminky
파이썬2021. 3. 8. 15:15
728x90

[ 파이썬 버전 확인 ]

우선 파이썬이 설치되어있는지 확인합니다.

 

python --version

 

 

만약 설치한 버전과 다른 버전이 나타난다면 시스템환경변수-PATH에 이전 버전의 파이썬 경로가 있지는 않은지 확인합니다.

그렇다면 새로 다운받은 경로를 PATH에 적은 후 우선순위를 올리거나

기존의 파이썬 PATH를 수정합니다.

 

 

 

[ 윈도우에서 환경변수 확인하는 명령어 ]

 

set

 

 

 

 

[ 파이썬 실행 ]

 

python

 

실행이 되었다면 >>> 표시가 나타납니다.

 

간단하게 >>> print("Hello, World!") 를 입력하면 그 결과가 나타나는 것을 알 수 있습니다.

print("Hello, World!")

 

 

파이썬을 종료하기 위해서는 다음의 명령어를 입력합니다.

exit()

 

 

 

 

[ IDLE ]

이처럼 cmd(명령프롬프트) 창에서 해도 되지만 IDLE이라는 프로그램을 이용해도 됩니다!

아마 파이썬 설치시 같이 설치되는 것 같습니다.

 

윈도우 검색창에 IDLE를 검색하면 나타납니다.

 

IDLE을 이용하면 이렇게 더 색깔있는 창에서 작업하실 수 있습니다 :)

 

※ 제 글이 도움이 되었다면 공감 부탁드려요 ◡̈

 

반응형
Posted by mminky
파이썬2020. 11. 18. 12:33
728x90

파이썬을 하다보면 다음의 코드를 이용합니다.

 

특히 wines = pd.read_csv('wine_dataset.csv') 는 정말 많이 이용하죠

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn import preprocessing

 

numpy, pandas, seaborn파이썬에서 필요한 라이브러리 입니다.

 

* numpy : 대규모 다차원 배열, 행렬연산에 필요한 라이브러리 (필수)

* pandas : 데이터 처리, 분석 라이브러리

* seaborn : 데이터 시각화 담당 라이브러리

 

 

import pandas as pd
data = pd.read_csv('dataset.csv')

위 코드는 pandas라이브러리를 pd라는 약자로 import하겠다는 의미입니다.

pd.read_csv는 pandas.read_csv와 같은 의미입니다.

 

 

반응형
Posted by mminky