파이썬 102

[ Python ] requests 모듈 다양한 이용

설치 : pip install requests 1. Response Text. (Text 출력) import requests with requests.Session() as s: r = s.get(site) print(r.text) 2. Response Status Code. (응답코드 출력) import requests with requests.Session() as s: r = s.get(site) print(r.status_code) 3. Response Encoding. (Encoding 출력) import requests with requests.Session() as s: r = s.get(site) print(r.encoding) 4. Response Hearders. (Hearders 출력..

[ Python ] 정규식 이용한 IP address 마스킹(감추기) 하기

정보보호를 목적으로 IP주소의 3번째 옥텟을 마스킹 처리해야 할 때, 정규식을 이용하여 마스킹 처리를 할 수 있다. import re ipaddress = ('172.168.10.12', '192.168.2.11','192.168.114.12','11.12.0.14') p1 = re.compile(r"(\d+)[.](\d+)[.](\d+)[.](\d+)") # 정규식 패턴과 추출할 그룹 지정. 3번째 옥텟 for i in ipaddress: m1 = p1.search(i) print(m1.group(1) + '.' + m1.group(2) + '.' + '***' + '.' + m1.group(4)) ----------------------------------------------------------..

[ Python ] 리눅스 iostat 결과값 DataFrame만들고, csv 저장

iostat : CPU통계와 디바이스와 IO통계를 출력해주는 유틸 tps 장치에서 초당 입출력 작업 수 kB_read/s 장치에서 초당 읽은(Read) 데이터 블록 (초당) kB_wrtn/s 장치에서 초당 쓴(Write) 데이터 블록 (초당) kB-read 장치에서 초당 읽은(Read) 데이터 블록 kB-wrtn 장치에서 초당 쓴(Write) 데이터 블록 [ 옵션 ] -m MB단위로 표현 iostats명령어의 결과를 DataFrame으로 만들고, csv 파일로 export import subprocess from datetime import datetime import time def iostat_data(): ps = subprocess.Popen(('iostat', '-m'), stdout=subpr..

[ Python ] csv 파일 읽고, 쓰기 ( pandas / csv 모듈 )

데이터를 처리하다 보면 csv 파일 자주 만나게 되는데, Python pandas와 csv 모듈로 처리할 수 있다. 파이썬 pandas csv 파일 읽고, 쓰기 샘플데이터 : example.csv (UTF-8) ============================= "Student","Math","Computer","English" "인호",90,85,100 "철수",85,100,95 "영희",75,70,85 "민수",95,85,90 "지훈",100,85,95 "지영",90,85,90 "정희",95,85,95 ============================= pandas의 read_csv 메소드로 csv 파일 읽기 import pandas as pd df = pd.read_csv(r'C:\Python\..

[ Python ] difflib 모듈 ( 문자열 비교, 유사도 )

difflib.SequenceMatcher ( 유사도 ) from difflib import SequenceMatcher def similar(a, b): return round(float(SequenceMatcher(None, a, b).ratio()),2) * 100 print(similar('서울시 강남구','서울시 영등포구 ')) ----------------------------------------------------------------------- 62.0 difflib.context_diff ( 문자열 목록 비교 ) samplefile_1.txt samplefile_2.txt 1 파이썬 2 python 3 iz 4 beautiful 1 파이선 2 python 3 is 4 beautifu..

[ Python ] matplotlib plot Shading Area (특정구간 강조)

그래프를 추출할 때, 쉐딩(강조)을 적용하기. 엔지니어의 보고서에 그래프 넣기 기본 x, y 막대 그래프 x = [ x + 1 for x in range(30) ] y = [ randint(1,5) for x in range(30) ] 단일 구간 강조 import matplotlib.pyplot as plt from random import randint a = 3 b = 8 plt.axvspan(a, b, color='blue', alpha=0.1) plt.plot(x, y) plt.show() 여러구간 강조 하기 (구간 지정) import matplotlib.pyplot as plt from random import randint z = {3:4,15:20,25:29} # 구간 Dictionary f..

Python Programming Basic - Append. Regular Expression (정규식 표현식) 기호

* : 바로 앞에 있는 문자가 0부터 무한대로 반복될 수 있다는 의미 import re stringtup = ('apple','appppple','aple','ale') p = re.compile('ap*le') for i in stringtup: if p.search(i): print('match :', i) else: print('no match :', i) -------------------------------------------------- match : apple match : appppple match : aple match : ale + : 바로 앞에 있는 문자가 최소 1부터 무한대로 반복될 수 있다는 의미 import re stringtup = ('apple','appppple','ap..

Python Programming Basic - Append. 리스트 축약 (List Comprehensions)

리스트 객체를 이용하여 조합, 필터링 등의 추가적인 연산을 통하여 새로운 리스트 객체를 생성하는 경우, 리스트 내장은 매우 효율적이다. for in (if ) - 시퀀스 타입 객체 : 리스트, 튜플, 셋 - 아이템 : 리스트 객체의 개별 아이템 - 표현식 : 개별 을 사용하여 사상함수 형태로 새로운 리스트 객체를 생성 - if 조건식 : 조건식에 맞는 원본 리스트의 아이템을 선별하는 경우. 생략가능 # [ 0, 1, 2, 3, 4 ] 요소 가진 리스트 만들기 (일반적인 문법) lst = [] for i in range(5): lst.append(i) print(lst) [0, 1, 2, 3, 4] # List Comprehensions을 이용한 방법 lst = [ i for i in range(5) ] ..

Python Programming Basic - 9. 파일읽고 / 쓰기

DOC : https://docs.python.org/3/library/functions.html?highlight=open#open open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None 파일을 오픈, 열지 못했을 때는 'OSError' 에러발생 모드(Mode) 모드 설명 'r' 읽기 모드 (기본) 'w' 쓰기 모드 'a' 추가 모드 (파일이 존재하면 끝에 추가) 'b' 바이너리 모드 't' 텍스트 모드 (기본) '+' 읽기와 쓰기으로 파일 열기 * 특별한 값을 지정하지 않으면 'r', 't'는 기본으로 설정 버퍼링(buffering) : 버퍼정책 설정 buffering 설명..

[Python] numpy setdiff1d(차집합)을 이용한 2개의 텍스트 파일 비교

numpy.setdiff1d(array1, array2) : 2개의 array의 차집합 A_file.txt B_file.txt Tomatoes are red Bananas are yellow Strawberries are red Oranges are orange Blackberries are black Tomatoes are red Bananas are yellow Blackberries are black import pandas as pd import numpy as np df_A = pd.read_csv('A_file.txt', names=['data_A']) df_B = pd.read_csv('B_file.txt', names=['data_B']) list_A = np.array(df_A['data..