Python
-
[Python] paramiko 모듈을 이용한 리눅스 디스크 사용량 체크Python/Python for Linux 2018. 5. 13. 23:23
파이썬(python) paramiko 모듈을 이용한 디스크 사용량 체크 import paramiko import re p = re.compile('(\d+)[%]') ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(host, username='', password='') stdin, stdout, stderr = ssh.exec_command('df -h') stdin.close() for line in stdout.read().splitlines(): m = p.findall(str(line)) if m: if int(m[0]) > 50: print('파일시스템이 50% 초과하였..
-
[Python] paramiko를 이용한 linux(리눅스) ssh 접속Python/Python for Linux 2018. 5. 13. 22:58
parkmiko : SSH2 연결 라이브러리 import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('host', username='', password='') stdin, stdout, stderr = ssh.exec_command('echo this is paramiko') stdin.close() for line in stdout.read().splitlines(): print(line.decode()) ssh.close() this is paramiko
-
[Python] collections Counter를 이용한 합집합, 교집합, 차집합 구하기Python/Data Struc & algo 2018. 5. 13. 15:25
# 합집합 import collections lst1 = ['a','b','c','a','c','f','g'] tup1 = ('b','d','e','e','f','f','g','h','h') ct1 = collections.Counter(lst1) ct2 = collections.Counter(tup1) print(ct1+ct2) # 합집합 요소 갯수 세기 print(list((ct1+ct2).elements())) # 합집합 리스트 Counter({'f': 3, 'a': 2, 'b': 2, 'c': 2, 'g': 2, 'e': 2, 'h': 2, 'd': 1}) ['a', 'a', 'b', 'b', 'c', 'c', 'f', 'f', 'f', 'g', 'g', 'd', 'e', 'e', 'h', 'h'..
-
[Python] collections deque를 이용하여 리스트의 왼쪽에 요소 추가하기Python/Data Struc & algo 2018. 5. 13. 15:04
# 왼쪽에 요소값 추가하기 (1) - appendleft import collections lst = ['a','b','c','d','e','f','g'] deq = collections.deque(lst) deq.appendleft('h') print(list(deq)) ['h', 'a', 'b', 'c', 'd', 'e', 'f', 'g'] # 왼쪽에 요소값 추가하기 (2) - extendleft import collections lst = ['a','b','c','d','e','f','g'] deq = collections.deque(lst) deq.extendleft('h') print(list(deq)) ['h', 'a', 'b', 'c', 'd', 'e', 'f', 'g']
-
[Python] 반복가능 (iterable)한 객체 오른쪽(right) 순회Python/Python Programming 2018. 5. 13. 14:54
# 스텝 슬라이싱(step slicing) 을 이용한 순회 lst = ['a','b','c','d','e','f','g'] for i in lst[::-1]: print(i, end= ' ') g f e d c b a # list pop 메소드를 이용한 순회 lst = ['a','b','c','d','e','f','g'] while True: try: print(lst.pop(), end=' ') except IndexError: break g f e d c b a
-
[Python] 리스트에서 숫자요소의 인덱스 위치 구하기Python/Python Programming 2018. 5. 13. 02:13
1. 숫자로 구성된 리스트 객체에서 숫자요소를 인덱스로 넣기 - 결과값 없음 a = [100,200,300,400,500] a.index(500) -------------------------- 없음 2. 문자열로 변환하여 인덱스 값 찾기 def intSearching(array,n): return list(map(str, array)).index(str(n)) print(intSearching([100,200,300,400,500],400)) # 배열과 찾고 싶은 값의 인덱스 --------------------------------------------------------- 3
-
[Python] 리스트의 index를 활용하여 문자열 분리Python/Python for Windows 2018. 5. 13. 01:58
리스트 객체의 index() 메소드 : 입력되는 인자 값에 해당하는 인덱스를 리턴 리스트의 index 메소드를 활용하여 특정 요소('log:')를 기준으로 앞부분과 뒷부분을 분리하기 ---------------------------------------------------------------------- 예제 텍스트 파일) 2018-05-12 00:00:01 ABC DEFG log: this is python 2018-05-12 00:00:02 ABC DEFG HI log: this is python 2018-05-12 00:00:03 ABC DEFG HI JKL log: this is python ---------------------------------------------------------..
-
[Python] 정규식 전방탐색과 후방탐색을 이용한 문자열 분할Python/Python Programming 2018. 5. 13. 00:34
DOCS : https://docs.python.org/3/library/re.html 로그파일이 일정한 구분자 (콤마(,), 공백, 세미콜론(;)) 로 구분되어 있으면 리스트나 튜플이 인덱싱을 이용하여 쉽게 분석할 수 있다. 하지만 비정형 로그 분석 혹은 모든 이벤트에 따라 로그형식이 일정치 않다면 파이썬 정규식의 기능인 "전방탐색"과 "후방탐색"을 통해 분할 할 수 있다. 예제 텍스트 파일) 2018-05-12 00:00:01 ABC DEFG log: this is python 2018-05-12 00:00:02 ABC DEFG HI log: this is python 2018-05-12 00:00:03 ABC DEFG HI JKL log: this is python ------------------..