IT/파이썬 2021. 2. 27.
파이썬 pyside2 layout에 버튼, 라벨 위젯 추가시에 쓰는 함수
파이썬 pyside2 layout에 버튼, 라벨 위젯 추가시에 쓰는 함수 보통은 그냥 addWidget 을 써버리는데, 이게 추가하는 순서대로 놓아지니깐, 나중에 뒤에 추가하는 것을 앞으로 정렬하고 싶을때 또 인덱스를 찾아서 지우고 삽입하는 과정을 해야 하는 것으로 레퍼런스가 많이 되어 있다. 그냥 런타임에 바뀌는 것이 아니라면, 원하는 순서대로 자기가 넣을 수 있도로고 addWidget 대신에 insertWidget 함수를 사용하면 편리하다. 아래처럼 말이다. # 원래코드 # self.ui.horizontalLayout_5.addWidget(self.ui.btn_search) # index 정보를 넣을 수 있는 insertWidget 사용한 코드 self.ui.horizontalLayout_5.inse..
IT/파이썬 2021. 2. 26.
파이썬 pyside2 버튼 글자 왼쪽 정렬
pyside2 pyqt5에서 QPushButton에 이미지도 넣고 글자도 넣고, 왼쪽으로 정렬하고자 한다면, 아래 그림처럼 (qpushbutton icon left alignment text left alignment) 간단하게 스타일시트 하나 적용하면 된다. 버튼이름.setStyleSheet("QPushButton { text-align: left; }") 추가로, 아래 내용도 넣어 주면 좋을 듯 background-position: left; background-repeat: no-reperat; 이글은 질문에서 답을 찾아온 것입니다. 아래 질문은 더 어려운걸 요구하셔서 ㅋㅋ 이미지는 왼쪽 정렬, 글자는 가운데 정렬 머 우리는 간단하게 통일하자고~~ stackoverflow.com/questions/..
IT/파이썬 2021. 2. 24.
파이썬 pyside2 QSplitter 한쪽은 fix 한쪽은 expand 되도록 수정하기
QSplitter 를 하나 놓아서, 아래 그림의 1, 2번 프레임들이 자유롭게 사이즈를 조정할 수 있게 구성했다. 앗 그런데, 창을 키우니깐 비슷한 비율로 크기가 커지는게 아닌가? 나는 1번창은 조정한 그대로 두고, 창 사이즈가 변경되면 2번만 조정되도록 하고 싶은데.. 보통의 layout 처럼 Qt Designer 상에서 QSplitter 속성에 layoutStretch 를 조정하는 부분이 없어 잠시 당황. (아래아래 그림 참고) 결국 코드로 그것을 구현할 수 밖엔 없었다..(적어도 내가 아는 범위에서는 ㅋㅋ) 코드는 아래와 같다. splitter인스턴스이름.setStretchFactor( 0, 0 ) splitter인스턴스이름.setStretchFactor( 1, 1 ) 앞에 인자는 인덱스고, 뒤에 ..
IT/리눅스 2021. 2. 22.
우분투 리눅스 사용자 이름 변경
우분투 리눅스 사용자 이름 변경 괜히 사용자명을 임시로 해 뒀다가, 찝찝해서 변경하려고 여기저기 알아봄. 사용자 명도 바꾸고, 홈 디렉토리 정도 바꾸면 될 듯 한데. 일단 재 부팅해서 root console 로 진입해서 하는게 좋다. 자기가 자기를 바꾸는 것은 여러모로 걸리는 것이 많네. root 로 로그인 하기 위해서 먼저, 패스워드를 주도록 하자. $ sudo passwd root 새 UNIX 암호 입력: 새 UNIX 암호 재입력: 이제 재부팅하고 root 로 로그인. 보통의 X Window 시스템에서는 기본적으로 root 진입이 막혀있는 듯 하니 미리 부팅할 때 recovery mode 이런것으로 console로 로그인 하도록 하자. 이제 사용자명을 바꿔 보는 2개의 명령을 수행하자. $ userm..
IT/파이썬 2021. 2. 19.
파이썬 flask Jinja2: Check If Variable – Empty | Exists | Defined | True
이거 중요함. 체크안하고 render_template 함수에서 막 쓰면, 자꾸 선언되어 있지 않다고 오류가 막남... variable is undefined? 이런류의 에러, Exception 발생 들어올 수 도 있고 안 들어 올 수 도 있는 변수는 쓰기 전에 반드시 체크하고 사용하기 바람. {% if variable is defined %} variable is defined
IT/DB 2021. 2. 19.
MongoDB Compass 로 데이터 내보내기
MongoDB Compass 로 데이터 내보내기 해보기 GUI 툴에도 이런 기능이 있다니 쉽게 CSV로 내보낼 수 있어서 좋네 일단 collection 메뉴에서 Export Collection을 선택한다. 모든걸 내보내도 되고, 원하는 데이터만 필터링 해서 내보내도 된다. 아래 그림에서 원하는 조건을 입력하면 원하는 데이터만 뽑아 낼 수 있다. 그럼 이제 뽑아낼 필드를 선택할 수 있다. 필드를 선택해서 Select output 을 선택하면, CSV 나 JSON 형태로 데이터를 내보낼 수 있다. 끝. 너무 편리하다. BJ.
IT/DB 2021. 2. 19.
MongoDB find remove 예제 몇개 - mongo shell
MongoDB find remove 예제 몇개 mongo shell에서 console 로 하나하나 쳐서 하려니 불편하긴 하지만 연습은 해 놔야지. 일단 DB를 수정하기 위해서는 아래 단계로 admin 권한을 획득하고 > use admin switched to db admin > db.auth('admin','패스워드') 1 > show databases admin 0.000GB config 0.000GB local 0.000GB twarelabDB 0.014GB > use 원하는DB명 switched to db twarelabDB > db.result.find({'box':{$regex:"pa_backup"}}) 부분 문자열로 Documents 가 있는지 확인해 보고, 필요하면 찾기에 사용한 검색식을 이..
IT/파이썬 2021. 2. 18.
파이썬 bool 함수로 bool 으로 변환 내용정리
착각하고 있던 것이 있어서, bool 이 그냥 0, 1 과 자동으로 변환될 줄 알았는데 문자 '0' 은 True 값으로 변환이 되네. 관련글 내용 참조 False >>> bool(0) False >>> bool(0.0) False >>> bool('') False >>> bool("") False True >>> bool(1) True >>> bool(123.123) True >>> bool("False") True >>> bool("0") True wikidocs.net/22202 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net BJ. Roberto Nickson 님의 사진, 출처: Pexels
IT/파이썬 2021. 2. 17.
파이썬 Mongoengine 에서 Document 삭제 방법 flask
파이썬 Mongoengine 에서 Document 삭제 방법 flask flask mongoengine 을 쓴다면 아래 방법으로 document 를 삭제할 수 있다. delete()로 간단하게 지울 수 있다. lunch = Food.objects.first() // Get a single 'Food' instance lunch.delete() // Delete it! 혹은 바로 찾아서 지우는 것도 가능하다. Food.objects(type="snacks").delete() Mongo shell 에서 지우려면 아래와 같이 수행하면 된다. > db.food.remove( { type : "snacks" } ) > db.monsters.deleteOne({ name: 'Zerp' }); 이 모든 내용은 아래 ..
IT/파이썬 2021. 2. 17.
파이썬 실행파일 만들기 - pyinstaller exe 실행파일
pyinstaller 로 실행파일 만드는 예제는 엄청 많다. 그중에 맘에 드는 블로그 글에서 핵심만 가져오자. 처음 만들때는 아래 명령으로 > pyinstaller -F main.py 두번째 부터는 이미 만들어진 main.spec 을 수정하면서 아래 명령으로 > pyinstaller -F main.spec 정상적으로 수행되면 작업폴더 내에 dist/ 아래에 실행파일이 생성됨을 확인해 볼 수 있다. 좀더 자세한 내용은 원본글을 존중하는 의미에서 아래 글로 방문해 주세요~~ developer-mistive.tistory.com/59 [pyinstaller] 파이썬 실행파일 만들어주는 pyinstaller 활용백서 해당 포스팅은 windows10 64bit / python 3.6 / IDE: pycharm /..
IT/DB 2021. 2. 16.
Mongodb 한번에 여러 documents 필드값 바꾸기
몽고DB...sql query도 아니고...이것도 어렵네..에효 무튼 정답은 아래를 참고 일단 원하는 collection 에 원하는 document를 찾아 $set 이라는 키워드로 특정 필드값을 업데이트 하는 예제 아래는 전체를 찾아 workline 이라는 필드를 object id xxxxx 를 갖는 reference field 혹은 embedded document 값으로 변경하는 실제 명령 예제 > db.order_item.update({}, { $set: {"workline":ObjectId("602b5cc41c50452150fc5ad0")}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.order_item.updat..
IT/DB 2021. 2. 15.
MongoDB 부분 문자열 검색 - MongoDB Compass 사용법
MongoDB 부분 문자열 검색 - MongoDB Compass 사용법 보통 대부분 부분 문자열로 다큐먼트를 검색하는 것이 일반적인데, 대부분 예제들이 그냥 완전이 같은 것만 찾는 것으로 되어 있으니 쩝.. 일단 정답은 필터 부분에 아래처럼 쓰면 된다. $regex 정규식을 사용해야 하네~~ >> { name:{ $regex : "원하는부분문자열"} } SR이 포함된 이름을 찾으라 했더니 잘 찾네. 대소문자 구분하니 주의하고, 혹시 대소문자 구분없이 쓰려면 아래처럼 option을 또 줘야 한다. >> { name:{ $regex : "원하는부분문자열", '$options': 'i'} } 참고한 문서는 아래글... docs.mongodb.com/compass/master/query/filter Query ..