Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- dfs
- 최소공배수
- 알고리즘
- python
- 튜플
- 에라토스테네스의 체
- 보이어무어
- 조합
- pandas
- 프로그래머스
- HashMap
- 영문자 확인
- 완전 탐색
- 점프와 순간이동
- 후위 표기법
- 순열
- 어려웠던 문제
- Java
- fragment identifier
- Dynamic Programming
- 완전탐색
- HashSet
- 문자열
- 동적계획법
- 규칙찾기
- 쿼드압축 후 개수세기
- 2017 카카오 코드
- Stack
- 메뉴리뉴얼
- 반복문
Archives
- Today
- Total
csmoon1010의 SW 블로그
[200711] Python 간단정리 _ 변수 및 수식, 파일 처리 본문
인턴을 시작하면서 Python을 통한 데이터 분석에 대한 공부가 필요해졌다.
1학년 때 배웠던 '소프트웨어의 이해'를 통해 Python에 대한 간단한 정리를 다시 해보려 한다.
1. 변수 및 수식
1) 수식(연산자)
연산 | 연산자 |
덧셈 | a + b |
뺄셈 | a - b |
곱셈 | a * b |
나눗셈 | a // b --- 정수나눗셈 a / b --- 실수 나눗셈 |
나머지 | a % b |
거듭제곱 | a ** b |
2) 문자열(string)
: 작은 따옴표(') 또는 큰따옴표(")로 표시한다.
- 특별한 문자인 경우 : \를 사용하여 단순 문자로 간주하도록 함
- 연산 : + (문자열 접합 _ 문자열 끼리), * (문자열 곱하기 _ 문자열 * 숫자)
- 작은따옴표 3개(''') : 여러 줄에 걸쳐 문자열 표현
- 문자열 자르기 : split 함수
a_string = "this is a plain sentence."
a_string.split() #default로 공백을 기준으로 문자열 자르기
b_string = "apple, banana, pineapple, mango"
b_string.split(",")
- 단, 문자열 + 숫자의 형태 불가 [대안 : 매개변수 %, str(숫자)로 변경]
- 출력 포맷 : %d(정수인자), %s(문자/문자열)
s3 = "Python is %d times easier than %s"
print(s3 % (10, "C++"))
print(%d %s %d % (10, 'a', 5))
3) 리스트
: 파이썬의 기본적인 자료형. 문자열 혹은 숫자들의 나열 리스트
['seoul', 'tokyo', 'paris']
[1, 3, 5]
- 접합(+), 곱하기(*) 연산 가능
4) 출력
print('Hello')
print('Hello' + 'csmoon1010') #접합 가능
print('Hello' , 'csmoon1010') #접합하여 출력됨(빈칸으로 구분된 형태)
print([1, 3, 5] * 2) #곱하기 가능
cf> print(a, end = ' ') : end에 해당하는 문자를 뒤에 붙여서 출력함
5) 변수
#변수 = 수식
score = 70
#변수 = 리스트 (요소는 인덱스로 접근)
cities = ['seoul', 'tokyo', 'paris' 'new york']
print(cities[3])
del cities[3]
6) 입력 받기
: input 함수를 이용한다. 엔터키를 기준으로 한 줄의 문자열 입력 받아 변수에 저장
name = input("이름 입력: ")
score = int(intput("첫 번째 점수 : ")) #type 지정하여 저장
7) 수학 함수
- 수학 내장 함수
abs(x) | 절대값 |
bin(x) | 정수값을 이진문자열로 |
int(s, base) | 스트링s를 정수로 변환 |
float(s) | 스트링s를 실수로 변환 |
len(x) | 순서열 x의 길이 |
max(iterable) max(arg1, arg2, *args) |
최대값의 객체 반환 |
min(iterable) min(arg1, arg2, *args) |
최소값의 객체 반환 |
pow(x, y) | x의 y승 |
range(stop) range(start, stop, step) |
주어진 범위의 값으로 리스트 생성하여 반환 |
input(prompt) | 표준입력으로 문자열 입력받아 반환 |
round(number, ndigit) | 소수점 이하 ndigit자리까지 남겨 반올림 |
sorted(iterable, key, reverse) | 순서열을 정렬한 사본 생성 |
sum(iterable, start) | start부터 시작해 원소들의 합 구하여 반환 |
- math 모듈(import math)
math.pi | 원주율 |
math.acos(x) math.asin(x) math.atan(x) |
코사인, 사인, 탄젠트값을 가지는 각도를 라디안으로 반환(0~3.14 사이) |
math.ceil(x) | 크거나 같은 값의 가장 적은 정수 |
math.cos(x) math.sin(x) math.tan(x) |
라디안 각도 x의 코사인, 사인, 탄젠트값 |
math.degrees(r) | 라디안 각도 r을 도로 변경 |
math.e | 상수 e |
math.exp(x) | e의 x승 |
math.fabs(x) | x의 절대값 계산, 반환 |
math.factorial(x) | x의 팩토리얼 계산 |
math.floor(x) | 작거나 같은 값의 가장 큰 정수 계산 |
math.log(x, b) | x의 기수 b의 로그값 |
math.pow(x, y) | x의 y승 계산 |
math.radians(d) | 도로 주어진 각을 라디안으로 변경하여 반환 |
math.sqrt(x) | x의 제곱근 계산, 반환 |
2. 파일 처리
1) 파일 읽기
- strip 함수 이용 : '\n'을 제거한 후 반환
def read_file():
f = open('memo.txt') #파일 열기
while True:
line = f.readline() #한줄 읽기
if len(line) == 0:
break
line = line.strip() #strip 함수
mymemo.append(line)
f.close()
mymemo = []
read_file()
for item in mymemo :
msg = item + '\n'
print(msg)
2) 파일 쓰기
- 'w' : 쓰기모드. 새롭게 씀
- 'a' : 추가모드. 기존 텍스트 파일에 추가하는 모드
def write_file():
f = open('memo.txt', 'w') #파일 열기(쓰기모드)
for item in mymemo:
msg = item + '\n'
f.write(msg) #파일에 쓰기
f.close()
mymemo = []
while True :
print("Write an item to buy. Input a blank line to exit : ")
item = input()
if len(item) == 0 :
break
mymemo.append(item)
write_file()
'데이터&인공지능 > 데이터분석(Python)' 카테고리의 다른 글
[200712] Pandas 기초 공부 _ 개념, 데이터 프레임 만들기 (직접, 파일), 파일로 저장하기 (0) | 2020.07.12 |
---|---|
[200711] Python 간단정리 _ 객체와 클래스 (0) | 2020.07.12 |
[200711] Python 간단정리 _ 함수, 모듈 (0) | 2020.07.11 |
[200711] Python 간단정리 _ 자료구조 (0) | 2020.07.11 |
[200711] Python 간단정리 _ 제어문 (0) | 2020.07.11 |
Comments