Python 12

[jetson] Namespace GstRtspServer not available 오류 해결 방법

문제점 및 증상 DeepStream SDK 파이썬 예제중에서 "rtsp"로 출력하는 예제를 실행했더니, 다음과 같이 "ValueError: Namespace GstRtspServer not available" 오류가 발생하였습니다. nvidia@nvidia-OrinNX16G:/opt/nvidia/deepstream/deepstream/sources/deepstream_python_apps/apps/deepstream-test1-rtsp-out$ python deepstream_test1_rtsp_out.py Traceback (most recent call last): File "deepstream_test1_rtsp_out.py", line 26, in gi.require_version('GstRtsp..

[python] Could not find a version that satisfies the requirement torch==1.11.0+cu113

문제점 및 증상"PyTorch v1.11.0+cu113"를 설치하는 과정에서 다음과 같은 오류를 만났습니다.$ pip install torch==1.11.0+cu113ERROR: Could not find a version that satisfies the requirement torch==1.11.0+cu113 (from versions: 1.11.0, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2, 2.3.0)ERROR: No matching distribution found for torch==1.11.0+cu113시험 환경HW: Intel i5 / 16GB RAMGPU: NVIDIA RTX..

[Python] JSON 문자열 다루기

개요 JSON 문자열을 dict로 변환하거나, 반대로 dict를 JSON 문자열로 변한하여 처리하는 방법을 알아보겠습니다. dict를 JSON 문자열로 변환하기 간단하게 json.dumps() 함수를 이용하면 됩니다. from json import dumps json_str = dumps(['foo', {'bar': ('baz', None, 1.0, 2)}]) print(json_str) """ Result>>> ["foo", {"bar": ["baz", null, 1.0, 2]}] """ 주의할 점은 한글과 같이 UTF 문자열 데이터가 포함되어 있는 dict를 dumps() 함수로 문자열로 변환을 시도하면 다음과 같이 인코딩되어 변환되기 때문에 바로 읽을 수가 없게 됩니다. from json impor..

[Python] 라즈베리파이 GPIO 제어하기 - 기초

개요 라즈베리파이에서 GPIO를 제어하는 방법을 알아보겠습니다. 패키지 설치 라즈베리파이에서 GPIO를 제어하기 위해서는 "RPi.GPIO" 패키지가 필요합니다. 다음과 같이 "RPi.GPIO" 패키지를 설치할 수 있습니다. $ pip install RPi.GPIO GPIO 제어 간단 출력 예제 다음은 GPIO를 이용한 간단한 출력 예제입니다. import time import RPi.GPIO as GPIO LED = 3 # LED 제어용 GPIO 핀 DELAY = 0.3 # GPIO를 BCM 칩 기준으로 GPIO.setmode(GPIO.BCM) # LED 를 위한 핀을 출력으로 설정 GPIO.setup(LED, GPIO.OUT) try: while True: # LED 켜기 GPIO.output(LED..

[Python] 파일 복사(copy)

개요 파일을 복사(Copy)하는 방법에 대하여 정리해 둡니다. 파일을 복사하기 위해서 shutil 패키지의 copy(), copyfile(), copy2() 함수들을 이용합니다. shutil.copy(src, dst) 기본적으로 "src" 원본 파일을 "dst" 대상 파일로 복사합니다. "dst" 대상 파일의 생성 시각은 현재 시각으로 설정됩니다. "dst"에 폴더명을 입력한 경우, 해당 폴더로 파일을 복사합니다. Linux 계열에서는 파일의 권한 모드(chmod 참조)를 복사하지만, 파일의 생성과 수정 시간과 같은 다른 메타 데이터는 복사되지 않습니다. 메타데이터까지 복사하려는 경우에는 shutil.copy2() 함수를 이용해야 합니다. shutil.copyfile(src, dst) 기본적으로 "src..

[Python] Windows 10에 OpenVino 개발환경 만들기

OpenVINO™ Runtime 설치 OpenVino로 개발한 프로그램이 정상적으로 동작할 수 있도록 Runtime을 다운로드 받아서 설치합니다. https://www.intel.com/content/www/us/en/developer/tools/openvino-toolkit/download.html 페이지에서 "Runtime"과 "Offline Installer"를 선택하여, "w_openvino_toolkit_p_2022.1.0.643_offline.exe" 파일을 다운로드 받아서 설치하였습니다. OpenVino 개발을 위한 가상환경 생성 파워쉘에서 다음과 같이 OpenVino 개발을 위한 "ov2022.1"이라는 가상환경을 설정하고, 활성화합니다. PS C:\Users\hanwh> cd D:/Dev..

pyvisa를 이용한 신호발생기 제어하기

개요 계측 장비를 다루는 라이브러리로 VISA를 활용하는데, 이를 python으로 포팅한 pyvisa에 대한 사용법을 간단하게 알아보고, pyvisa를 이용하여 신호발생기(Signal Generator)를 제어하는 방법을 정리해 둡니다. 기본적인 사용법 명령을 장치에 전송할 때는 write() 함수를 이용하고, 장치로부터 특정 값을 조회하여 가져올 때는 query() 함수를 이용합니다. pyvisa 설치 다음과 같이 pyvisa 패키지를 임포트하여 VISA 관련 함수를 이용할 수 있습니다. pip install pyvisa pyvisa-py pyvisa 패키지만 설치하고, import 하면 다음과 같은 오류가 발생합니다. >>> import pyvisa as visa >>> rm = visa.Resour..

[Python] 디스크 용량 확인하기

디스크의 용량을 확인하기 위해서 Pytyon 3에서 지원하는 shutil 패키지의 disk_usage() 함수를 이용하면 됩니다. 아래 소스는 현재 작업 폴더가 속한 디스크에 대한 용량을 확인하는 예제입니다. import shutil my_path = '.' # 디스크의 용량 확인 total, used, free = shutil.disk_usage(my_path) # 디스크 용량에 대한 이름 확인 total_label, used_label, free_label = shutil.disk_usage(my_path)._fields print(f'{total_label} = {total:,} byte / {used_label} = {used:,} byte / {free_label} = {free:,} byte'..

문자열을 날짜로 변환하는 방법

자꾸만 헷갈리는 파이썬에서 문자열을 날짜로 변환하는 방법에 대하여 정리해 둡니다. datetime.datetime.strptime() 함수를 이용하면, 간단하게 문자열을 날짜로 변환할 수 있습니다. # 날짜 변환에 대한 예제 import datetime as dt # value_error = dt.datetime.strptime('02-4-23', '%y-%m-%D') # ValueError: 'D' is a bad directive in format '%y-%m-%D' converted_day = dt.datetime.strptime('02-4-23', '%y-%M-%d') print(converted_day) # O..

[python] len() 함수 vs count() 메소드

자바 같은 경우, "length" 속성을 통하여 문자열의 길이나, 배열의 개수를 알 수 있었는데, 파이썬의 경우에는 len() 함수를 이용합니다. 일부 클래스에서는 count() 메소드를 통하여 항목의 개수를 반환하는 경우가 있었지만, 파이썬은 약간 다릅니다. 시퀀스나 컬렉션에 대한 항목 개수를 얻기 위해서는 len() 함수를 이용하고, 시퀀스 객체에 대한 count() 메소드의 경우, 입력한 서브 시퀀스가 중첩되지 않게 나타나는 회수를 반환합니다. 각각의 함수들에 대해 자세히 살펴보면 다음과 같습니다. len() 함수 파이썬에서 시퀀스(문자열, bytes, bytearray, 리스트, 튜플, range 등) 또는 컬렉션(딕셔너리, set)의 길이 (항목 수)를 얻는데 이용합니다. import array..

728x90