반응형 python311 Subprocess 모듈이용하기 회사 업무를 진행하면서 업무에 필요한 다양한 스크립트를 작성한다. IPAM system에서도 조회가 가능한 정보이지만 나는 Python 스크립트에서 shell을 실행하여 원하는 정보를 처리하는 방법을 택했다. nslookup IP address (e.g - nslookup 10.0.0.1) 형태의 명령어를 통해서 조회하는 IP와 연계된 DNS 레코드를 추출했다. 검색을 통해서 가장 처음 알게된 방법은 os.system('nslookup ' + '10.0.0.1') 하지만 위와같이 코드를 수행하게 되면 해당 프로세스를 실행하여 출력해줄 뿐 output을 capture 할 수 없다. 이 문제를 해결하려면 subprocess를 이용하면 가능하다. import subprocess import openpyxl f.. 2021. 4. 15. Day 1. PyQt5 사용해보기 - 빈 윈도우 띄우기 그리고 이벤트 루프 나는 회사에 입사 후 현장에 사용될 스위치 컨피그를 만들어주는 GUI Application을 만들어서 배포했다. 기존에는 txt 파일로 저장된 내용을 Mangement IP와 일부 Vlan 정보만 바꾸어 사용하다보니 Human Error가 많을 수 밖에 없었다. 예를 들면, spanning-tree의 vlan range를 오설정 한다던가 trunking vlan 오설정 등. 그래서 그런 Human Error를 최소화 하고자 PyQt5를 이용해서 간단한 Application을 만들었다. GUI 프로그래밍에 대한 탄탄한 지식이 있었던 건 아니었고 구글링으로 원하는 Application을 만들었고 현재도 동료들의 Feedback을 통해서 지속적으로 업데이트하고 있다. 잘 디자인된 프로그래밍이라고 하기엔 다소 .. 2021. 2. 4. How to get a dict key in the list Example: interfaceList = [{"Gi 0/1" : "Switch 1"}, {"Gi 0/2" : "Switch 2"}] I want to get soley a str-type key from the list to look up a list of dict, which are Gi 0/1 and Gi 0/2. But, if I iterate and print the interfaceList and using keys() functions for elem in interfaceList: print(elem.keys()) I get a dict_keys-type key instead like the right below output. [Output] dict_keys(['Gi 0/1']) dic.. 2020. 6. 13. Python regular expression match and search methods Long story short, match and search methods can be used whether to search the beginning of the string or the entire string. Let's dig into an example. import re data = ["ESA1-XXX-XXX - Po1", "ESA1-XXX-XXX - PO1"] for elem in data: m = re.search('(Po|PO)\d', elem).group() What I want to do is to find and replace "- Po1" or "- PO1" to "(Po1)" or "(PO1)". In order to find a certain pattern, I use re.. 2020. 3. 24. 이전 1 2 3 다음 반응형