python3 19

[python3][one-liner] 섹션 헤더 없는 설정 파일 값 바꾸기

기록용으로 남깁니다.A=B 형태의 설정파일이고, REMOTE_ADDR 이란 변수가 있으며, 섹션 헤더는 없는 경우에 한줄로 원하는 값으로 바꾸는 명령을 소개합니다.참고로 ssh_config 파일 내용은 다음과 같습니다.REMOTE_ADDR=1.2.3.4바꾸고 싶은 값은 val='1' 에서 수정하고 파일명은 f='ssh_config' 에서 수정하도록 합니다.결과물!!python3 -c "val='1';from configparser import ConfigParser;f='ssh_config';c=ConfigParser();c.optionxform=str;c.read_string('[sec]\n'+open(f,'r').read());c['sec']['REMOTE_ADDR']=val;open(f,'w').w..

IT/python 2024.12.19

[펌] python3 용 ctag 사용법

기본적인 내용은 rampart81 님의 블로그 포스트를 참고하시면 됩니다.위 내용은 윈도우인 경우이고 리눅스는 python3 로 지정하지 않으면 오류 뜰 확률이 높아 살짝 수정해서 저장용으로 사용니다.alias python_ctags="ctags -R --fields=+l --languages=python --python-kinds=-iv -f ./tags . $(python3 -c "import os, sys; print(' '.join('{}'.format(d) for d in sys.path if os.path.isdir(d)))")"

카테고리 없음 2024.11.05

[python3] windows10 에서 pyenv + poetry 환경 구축하기

기록용으로 남깁니다.Win + X 키를 눌러 터미널을 관리자 권한으로 실행권한 설정powershell 이 실행된 상태에서 아래 명령 입력. 이 것 실행 없이 실치 시도하면 '보안 오류' 발생함. 스크립트를 실행할 수 없다고 함Set-ExecutionPolicy RemoteSignedpyenv 설치 명령 입력Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"pyenv 실행 확인설치 했더니.. 실행을 못하네?이..

IT/python 2024.05.03

[python3] poetry 설치해보기

라즈베리파이4B 장비에 현재 과거 버전인 Debian 10 (buster) 가 os 로 설치되어 있습니다. 파이썬 버전은 3.7.3 입니다. 이 상태에서 일반적인 poetry 설치 명령을 실행하니 한방에 안되더군요... 처음 시도한 명령입니다. curl -sSL https://install.python-poetry.org | python3 - 1.8.2(2024.04.04 현재 최신 안정 버전)를 설치하려고 했지만 파이썬 버전 의존성(>=3.8)이 안맞아서 실패했습니다. 더보기 실패 로그 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple ERROR: Ignored the following versions that re..

IT/RaspberryPi 2024.04.04

[python3] 윈도우에서 한줄 실행하는 방법

python3 -c 'import os; print(os.environ)' 이 명령을 리눅스에서 실행할 때에는 다른 os 에서는 실행이 안 될지는 몰랐습니다. 잘 실행됬었으니까요.. 하지만 윈도우에서 실행하면 SyntaxError: EOL while scanning string litteral 이라는 오류가 발생합니다. 윈도우라고 안 될리는 없을텐데.. 하며 여러번 명령들을 바꿔가며 실패만 거듭하다가 포기할 즈음에 설마 윈도우는 따옴표를 가리나? 하는 생각에 큰 따옴표로 감싸봤습니다. 그러니... 잘 되네요!! 작은 따옴표 ' 와 큰 따옴표 " 모두 혼용할 수 있는 리눅스와 달리 윈도우에서는 -c 옵션으로 cli 상의 한 줄 명령을 주려면 반드시 큰 따옴표 " 로 둘러쌓아야 정상 실행됩니다.

IT/python 2024.02.01

[raspberry pi 4B][python3] 라즈베리 파이 csi 카메라 체크하기

라즈베리파이 V2 카메라는 csi 케이블로 라즈베리파이 4B 등에 연결할 수 있습니다. /boot/config.txt 에 imx219 장치를 활성화해야 사용할 수 있습니다. 이 카메라를 연결 여부, 정상 동작 여부를 pathlib.Path 와 smbus 를 사용하여 확인할 수 있습니다. 참고로 위 소스는 카메라의 i2c 주소가 항상 10을 사용하고, 카메라 외에 i2c 를 사용하는 다른 장치가 없을 때에만 정상 동작합니다.

IT/RaspberryPi 2023.11.17

[python3][pyaudio] 초기화 디버그 메시지 숨기기

pyaudio 를 쓰면서 좀 짜증아 났던 부분이 강제적인 디버그 메시지를 봐야 한다는 것입니다. 구현한 프로그램이 시스템의 서비스로 등록되면 해당 메시지가 syslog 를 당당하게 차지하기도 합니다. 보통은 /usr/share/alsa/alsa.conf 파일이나 ~/.asoundrc 파일이나 /etc/asound.conf 설정이 문제가 있어서 발생하는 메시지라고 합니다. 가장 좋은 것은 최적화된 설정을 찾아서 고치는 것이겠죠.. 고치지 않아도 동작 잘 되고, 위의 alsa 설정 고치기도 머리 아프고, 지저분한 것이 싫은 경우에는 에러 핸들러를 비워주면 해당 메시지 없이 사용할 수 있습니다. #!/usr/bin/env python from ctypes import * import pyaudio # c 언어..

IT/python 2023.10.18

[python3] 터미널에서 한 줄로 if else 사용하기

가끔 터미널에서 작업을 할 때 bash 로 작성하기에는 짜증나고 python 으로 하면 금방 처리되는 경우가 있습니다. 파이썬 명령이 길어지는 경우 파일로 작성해서 터미널에서 실행하면 가장 간단한데, 가끔 파일 자체를 작성할 수 없는 경우가 있습니다. 이런 경우 터미널에서 python -c '파이썬 명령들' 로 실행을 할 수 있는데 단순 한줄짜리 명령들은 세미콜론 ; 을 사용해서 여러 명령을 입력할 수 있었는데 if else 등은 할 줄 몰라서 못했었습니다. 그냥 대충 써보면 개행이 잘못되었다든지 문법이 틀렸다든지의 오류가 발생했었습니다. 인터넷을 뒤져 찾아낸 방법은 python -c $"파이썬 명령1\n파이썬 명령2\n..." 형태로 쓰면 정상적으로 실행되는 것을 확인할 수 있었습니다. 예를 들면 if..

IT/python 2023.10.06

[python3] asyncssh + nohup command

원격으로 작업을 할 일이 생겼습니다. 시간이 좀 걸리는 파이썬 패키지 설치 작업이었습니다. 이를 여러 장비에다 설치하려고 하는데 기존 코드는 장비 하나하나 일일이 접속해서 패키지도 하나하나 다 설치 완료 해야 다음 항목으로 넘어갈 수 있었습니다. 각 장비에서 소요되는 시간은 3분이 채 안되는데 전체 장비가 400여대 가까이 되니 1200분... 즉 20시간이 소요되는 겁니다... 이를 줄여보고자 며칠 째 집에도 제 때 못들어가고 작업하다가 대충 동작하는 코드를 완성해서 그 일부를 공유합니다. connect 인자는 대충 아실겁니다. known_hosts=None 은 등록되지 않은 장비에 접속할 때 known_hosts 에 등록할 것인지 물어보게 되는데 (ssh 명령으로는 -o StrictHostKeyChe..

IT/python 2023.09.22