전체 글 50

[이미지 뷰어] 꿀뷰 (honeyview)

꿀뷰는 반디집을 만든 반디소프트에서 제작한 이미지 뷰어 프로그램 입니다. 옛날부터 많은 이미지 뷰어 프로그램을 사용했었으나 유료로 전환되거나 파일을 읽는데 너무 많은 시간이 소요되는 문제가 있었습니다. Windows 기본 뷰어는 개인적으로 동작이 이상하다고 느껴져서 불만이 있었습니다. 그러던 중 꿀뷰를 찾게 되었고 아직까지도 굉장히 만족하며 사용하고 있습니다. 기업 무료 사용도 가능하기 때문에 반디집과 함께 회사에서 사용하고 있습니다. 별도의 광고나 요구사항도 없고 사용 방법도 간단합니다. kr.bandisoft.com/honeyview/ 무료 이미지 뷰어 꿀뷰 · 소개 및 다운로드 · 움짤에 강한 이미지 뷰어 꿀뷰 다양한 포맷의 이미지를 빠르게 보여주는 고성능 무료 이미지 뷰어입니다. 광고 주요 특징 ..

Utility 2021.03.01

[압축 프로그램] 반디집

제 기준으로 압축 파일의 대세는 arj -> rar -> zip -> 7z 으로 옮겨갔습니다. 리눅스에서는 여전히 tar이 많이 사용되고 초심자 분들께서는 알집을 사용하여 alz, egg를 사용하는 경우도 있습니다. 저의 경우 7z 파일을 선호하고 있습니다. 반디소프트에서 제작한 반디집은 무료로 사용이 가능한 압축/해제 툴입니다. 그래서 회사에서도 이 툴을 사용하고 있습니다. 별도의 광고나 요구사항도 없고 사용 방법도 간단합니다. kr.bandisoft.com/bandizip/ 반디집 공식 홈페이지 · ALZ, EGG, 7Z, RAR 지원 무료 압축 프로그램 반디집 (Windows) 반디집은 다양한 기능을 제공하고 빠르게 작동하는 압축 프로그램입니다. 무료로도 사용할 수 있으며, 유료 에디션은 다양한 고..

Utility 2021.03.01

Python 표준 라이브러리 (디렉토리(폴더) -directory(folder)-, os, glob)

디렉토리를 관리하기 위해 사용되는 표준 라이브러리는 크게 os, glob 두 가지가 있습니다. os 모듈 함수 설명 사용법 결과 os.listdir() 현재 파일 및 디렉토리 목록 print(os.listdir()) print('---') print(os.listdir('c:\\')) ['.idea', 'main.py', 'mymodule.py', 'text.txt', 'tistory', 'venv', '__pycache__'] --- ['$Recycle.Bin', ... 이하 생략] os.getcwd() 현재 디렉토리 print(os.getcwd()) D:\dev\workspace\python\helloworld\venv\Scripts\python.exe D:\dev\workspace\python\he..

PyCharm의 Python console(파이썬 콘솔) 한글 깨짐 문제 해결

PyCharm 사용 시 아래의 명령을 실행하면 콘솔창의 한글값이 깨지는 것을 확인할 수 있습니다. os.system('dir/w') 그러나 Windows의 cmd창을 열고 실행시키면 정상적으로 표시됩니다. 이에 대한 해결책을 이것저것 찾아봤는데 근본적인 해결책은 없어보입니다. 아래와 같이 실행 전에 chcp 65001 명령어를 수행하시면 보기 불편한 문제는 일단 사라집니다. import os os.system('chcp 65001') os.system('dir/w') 이 문제에 대한 근본적인 해결책은 저는 못 찾았습니다. JetBrains사에서 한국어 code page를 제대로 표시하게끔 수정을 해줘야 하는 것이 아닌가 싶습니다. chcp는 Windows 콘솔의 언어 코드를 변경하는 명령어 입니다. - ..

Python 표준 라이브러리 (파일 -file-)

파일의 입출력을 위해서는 별도의 모듈을 import하지 않아도 Python 표준 내장 라이브러리를 사용할 수 있습니다. fp = open(파일명, 모드, 인코딩) 함수를 통해 file을 열고 파일 포인터를 얻어올 수 있습니다. 모드는 아래 세 가지가 있습니다. 모드 뜻 r read 읽기모드 w write 쓰기모드 a append 추가모드 파일 포인터가 지원하는 함수는 아래와 같습니다. 함수명 뜻 사용법 (fp = open(...)한 경우) write 파일에 내용을 작성 fp.write('abc') read 파일의 내용을 읽어옴 a = fp.read() readline readlines seek x번째 위치로 포인터를 옮김 fp.seek(5) tell 현재 포인터의 위치를 알려줌 fp.tell() clos..

Python 패키지 (Package)와 __init__.py

다른 언어와 마찬가지로 특정 기능을 하는 파일들끼리 모아놓은 것을 패키지라고 합니다. (ex. video, sound, network, motor, ETC) 1. Package 생성 프로젝트 우 클릭 -> New -> Python Package 저는 tistory라는 package를 생성하고 그 아래 post package, user package를 추가로 생성하였습니다. 그리고 각각 아래와 같이 파일을 생성하였습니다. tistory/post/getpost.py def getpost(): return '1', 'hello' tistory/user/getuser.py def getuser(): return 'kim' 2. Package 사용 main.py import tistory.user.getuser ..

Python 모듈, 라이브러리, 프레임워크 (module, library, framework)

모듈 (module) Python의 모듈은 크게 표준 모듈과 외부 모듈로 나눌 수 있습니다. Python에 내장된 것이 표준 모듈, 다른 사람들이 작성하여 공개되어 있거나 본인이 만든 파일을 외부 모듈이라고 할 수 있습니다. 이 모듈들은 import 문을 사용하여 가져오고 사용할 수 있습니다. .py, .pyc, .pyd 파일을 import 할 수 있습니다. 확장자 의미 .py Python 소스 코드 .pyc Python 소스를 컴파일하여 생성된 byte 코드 .pyd Python이 사용하는 windows dll 로 만들어진 C 모듈 같은 경로에 있는 경우 바로 import하면 됩니다. 다른 디렉토리에 있는 경우 (예: c:\mypython\hellomodule.py) sys 모듈의 path.append..

Ubuntu SSH(Secure Shell) 설정 및 접속 ~putty, mobaXterm~

우분투 PC에 접속하기 위한 방법은 크게 두 가지가 있습니다. 1. 터미널로 접속 2. 원격 데스크탑 제어 우선 터미널로 접속하기 위해 SSH server를 설치해야 합니다. 아래 명령어를 사용합니다. $ sudo apt-get install openssh-server 다음은 다른 PC에서 우분투 PC로 접속하기 위한 IP 주소를 확인해야 합니다. ifconfig 명령어를 사용하여 IP를 확인합니다. 최초 설치한 PC에서는 net-tools 패키지를 설치해야 합니다. $ sudo apt-get install net-tools $ ifconfig Windows PC에서의 예를 들겠습니다. SSH 접속을 도와주는 프로그램은 많습니다만 대표적으로 Putty와 MobaXTerm 이 있습니다. 최근 저희 회사 동..

환경설정/Ubuntu 2021.02.27

Python 함수 (function) -def-

함수 Python의 함수는 아래 형태를 가집니다. def 함수명(인자 ...): ... return 이런식으로 사용하시면 됩니다. 여러 개의 값을 return할 수 있는것이 특징입니다. def myPrint(sentence): print(sentence) def sum(a, b): return a + b print('hello world') print(sum(1, 3)) def getTuple(): return 1, 2, 3 a, b, c = getTuple() print(a, b, c) 아래와 같이 응용이 가능합니다. # 명시적 호출 def sum(a, b): return a + b print(sum(b=10, a=20)) # 디폴트 인자 def sum2(a = 1, b = 2, c = 3): prin..

Python 반복문 (for, while)

Python에서의 반복문은 크게 두 가지로 구분할 수 있습니다. for, while입니다. 그리고 여기에 응용할 수 있는 range 함수가 있습니다. for문 기본 구조입니다. for 변수 in 반복 가능한 데이터: 문장1 continue 또는 break else: 문장2 아래와 같이 사용할 수 있습니다. a = 'abcdefg' for c in a: print(c) b = [1, 2, 3, 4, 5] for i in b: print(i) c = (1, 2, 3, 4, 5) for i in c: print(i) d = {1, 2, 3, 4, 5} for i in d: print(i) e = {'a':'aa', 'b':'bb', 'c':'cc'} for i in e: print(i, e[i]) for i ..