6월, 2024의 게시물 표시

python file 파일 쓰기

파이썬에서 파일에 한 줄씩 쓰는 방법을 알려드리겠습니다. 파일에 한 줄씩 쓰기 위해 다음과 같은 방법을 사용할 수 있습니다: 1. **파일 열기 및 쓰기 모드 설정**: `open()` 함수를 사용하여 파일을 열고, 쓰기 모드(`'w'` 또는 `'a'`)로 설정합니다. `'w'` 모드는 파일을 쓰기 전에 초기화하며, `'a'` 모드는 파일 끝에 추가합니다. 2. **파일에 쓰기**: 파일 객체의 `write()` 메서드를 사용하여 한 줄씩 문자열을 파일에 씁니다. 3. **파일 닫기**: 작업이 끝난 후에는 파일을 닫아 리소스를 해제합니다. 여기에 예제를 통해 자세히 설명하겠습니다: ### 1. 파일 열기 및 쓰기 ```python # 파일을 쓰기 모드('w')로 열기 with open('example.txt', 'w') as file:     # 한 줄씩 쓰기     file.write("첫 번째 줄\n")     file.write("두 번째 줄\n")     file.write("세 번째 줄\n") ``` 위 예제에서 `open()` 함수는 `'w'` 모드로 파일을 열어서 `example.txt`라는 파일에 쓰기 작업을 수행합니다. ### 2. 파일 닫기 `with` 구문을 사용하면 파일을 사용한 후 자동으로 닫히므로 명시적으로 닫을 필요가 없습니다. 하지만 일반적으로 파일 객체를 사용한 후에는 `close()` 메서드로 파일을 명시적으로 닫는 것이 좋습니다. ```python # 파일을 쓰기 모드('w')로 열기 file = open('example.txt', 'w') # 한 줄씩 쓰기 file.write("첫 번째 줄\n") file.write("두 번째 줄\n") file.write("세 번째 줄\...

css `align-items` vs `align-content`

 `align-items`와 `align-content`의 차이를 좀 더 쉽게 설명해 드리겠습니다. ### Flexbox 레이아웃의 기본 이해 - **주축(main axis)**: Flex 컨테이너의 주요 방향(기본적으로 가로 방향). - **크로스 축(cross axis)**: 주축과 수직인 방향(기본적으로 세로 방향). ### 1. `align-items` - **기능**: **한 줄**의 항목들을 크로스 축을 따라 정렬합니다. - **예시**: 자식 요소들이 한 줄에 있을 때, 그 줄 내에서 자식 요소들의 정렬을 설정합니다. - **사용 상황**: 모든 자식 요소들이 한 줄에 있을 때, 예를 들어, 높이를 조정하거나 중간, 위, 아래로 정렬하고 싶을 때 사용합니다. #### 비유 - **교실에서 책상 정렬**: 학생들이 한 줄로 앉아 있을 때, 그 줄 내에서 학생들을 중간, 위, 아래로 정렬하는 것과 같습니다. #### 예시 ```css .container {   display: flex;   height: 200px; /* 컨테이너 높이 설정 */   align-items: center; /* 자식 요소들을 컨테이너의 중간에 정렬 */ } ``` ### 2. `align-content` - **기능**: **여러 줄**의 항목들을 크로스 축을 따라 공간을 분배합니다. - **예시**: 자식 요소들이 여러 줄로 랩핑될 때, 각 줄 사이의 공간을 설정합니다. - **사용 상황**: 여러 줄의 항목이 있는 경우, 각 줄 사이의 공간을 조정하고 싶을 때 사용합니다. #### 비유 - **교실에서 줄 간격 정렬**: 여러 줄의 책상이 있는 교실에서 줄 간의 간격을 설정하는 것과 같습니다. #### 예시 ```css .container {   display: flex;   flex-wrap: wrap; /* 여러 줄로 랩핑 */   height: 400px; /* 컨테이너 높이 설정 */   a...

m1 맥북에서의 파이썬 스레드 thread GIL

 Apple M1 칩을 사용하는 맥북에서 파이썬으로 사용할 수 있는 스레드 수는 몇 가지 요소에 따라 다를 수 있습니다. 여기에는 CPU 코어 수, 프로그램의 성격, 운영체제의 스케줄링 정책 등이 포함됩니다. ### Apple M1 칩의 스레드 처리 능력 1. **코어 구성**:     - M1 칩은 8개의 CPU 코어로 구성되어 있습니다. 이 중 4개는 고성능 코어(Performance cores)이고, 나머지 4개는 고효율 코어(Efficiency cores)입니다.      2. **스레드와 병렬 처리**:     - 파이썬의 기본 스레딩 라이브러리인 `threading` 모듈은 실제로 CPU 병렬 실행을 하지 않습니다. 이는 파이썬의 전역 인터프리터 잠금(Global Interpreter Lock, GIL) 때문입니다.     - 병렬 처리가 필요하다면, `multiprocessing` 모듈을 사용하는 것이 더 적합할 수 있습니다. 이 모듈은 각 프로세스가 별도의 인터프리터와 메모리 공간을 가지므로 GIL의 영향을 받지 않습니다. ### 파이썬으로 가능한 스레드 수 1. **I/O-bound 작업**:     - 파일 입출력, 네트워크 작업 등 I/O-bound 작업에서는 수백 개의 스레드를 사용할 수 있습니다. 이러한 작업은 GIL의 영향을 덜 받기 때문입니다.      2. **CPU-bound 작업**:     - 계산 집약적인 작업에서는 `multiprocessing` 모듈을 사용하여 코어 수에 맞게 프로세스를 분산시키는 것이 좋습니다. M1 칩의 경우 8개의 코어가 있으므로 최대 8개의 프로세스를 동시에 실행할 수 있습니다. ### 예제 다음은 I/O-bound 작업에서 스레드를 사용하는 간단한 예제입니다: ```python import threading def io_bound_task(): ...

openai api

퀵스타트 플레이그라운드에 생성되는 코드 바로 적용 안됨 키 넣어줘야함. env로 넣어도 되고 그냥 바로 넣어도 되고 https://platform.openai.com/docs/quickstart 토큰 수 계산 https://platform.openai.com/tokenizer 토큰 콜수 비용계산 사이트 여러 llm 가격비교 얼추 내가 손으로 계산한거랑 비슷하게 나오는거 보니 계산은 맞게 했는데 실제로는 더 비싸게 나옴 https://www.launchnow.pro/openai-chatgpt-api-pricing-calculator 내 티어 확인(rpm 제한 다름) https://platform.openai.com/settings/organization/limits 티어별 rpm 문서 https://platform.openai.com/docs/guides/rate-limits/rate-limits Azure OpenAI 라는 것도 있네 https://learn.microsoft.com/en-us/azure/ai-services/openai/overview#comparing-azure-openai-and-openai OpenAI와 동일한 모델을 실행하면서 Microsoft Azure의 보안 기능을 얻을 수 있습니다. Azure OpenAI는 프라이빗 네트워킹, 지역별 가용성 및 책임 있는 AI 콘텐츠 필터링을 제공합니다. 이거 댓글 읽어볼만함  ... In fact, “real” parallelism is not natively possible at all because of what’s called the Global Interpreter Lock 2 (the GIL) in python... -> GIL 때문에 스레드가 동시에 작동은 안되지만 스레드를 번갈아서 사용하게되어서 어쨌든 되기는 하는 듯? https://community.openai.com/t/can-one-assistant-run-concurrently-on-multiple-differe...

python 문자열 format 포맷팅

 파이썬에서 문자열 포맷팅을 사용하여 C 언어에서 %d와 같이 값을 삽입하는 방법이 있습니다. 여러 가지 방법이 있지만 가장 일반적으로 사용되는 방법은 다음과 같습니다: 1. **포맷 문자열 사용하기**: `format()` 메서드나 f-string을 사용하여 값을 삽입하는 방법입니다.    - **format() 메서드 사용**:      ```python      num = 10      text = "숫자는 {}입니다.".format(num)      print(text)      ```    - **f-string 사용** (Python 3.6 이상):      ```python      num = 10      text = f"숫자는 {num}입니다."      print(text)      ``` 2. **% 포맷팅 사용하기**: C 스타일의 포맷 문자열을 사용하여 값 삽입도 가능합니다.    ```python    num = 10    text = "숫자는 %d입니다." % num    print(text)    ``` 위 예제에서 `%d`는 정수를 대체할 위치를 나타내며, `% num`은 해당 위치에 들어갈 값을 제공합니다. 이러한 방법들은 각각의 장단점이 있으며, 파이썬의 버전 및 개인적인 코딩 스타일에 따라 선택할 수 있습니다. 최근 파이썬에서는 f-string이 가독성과 표현력 면에서 매우 유용하므로, 가능하다면 f-string을 사용하는 것이 권장됩니다. 여러 개의 값을 삽입하는 방법도 간단하게 설명해 드리겠습니다. 여러 개의 값을 삽입하는 경우...

mac 이미지 사이즈 조정하기

 mac 이미지 사이즈 조정하기 preview로 이미지 열어서 상단바 tools > adjust size

synology nas란

Synology는 네트워크 연결 스토리지(Network Attached Storage, NAS) 기기를 제조하는 회사입니다. NAS는 파일을 중앙에서 저장하고 네트워크를 통해 여러 사용자와 장치가 접근할 수 있도록 해주는 장치입니다. Synology의 NAS 장치는 사용하기 쉬운 인터페이스와 강력한 기능들로 잘 알려져 있습니다. 주요 기능은 다음과 같습니다: 1. **파일 공유 및 백업**: 네트워크를 통해 파일을 공유하고 백업할 수 있습니다. 2. **멀티미디어 서버**: 사진, 음악, 동영상 등을 스트리밍할 수 있는 멀티미디어 서버로 사용할 수 있습니다. 3. **데이터 보호**: RAID 구성, 자동 백업, 클라우드 백업 등을 통해 데이터를 안전하게 보호합니다. 4. **원격 액세스**: 인터넷을 통해 원격으로 NAS에 접근할 수 있습니다. 5. **애플리케이션 지원**: 다양한 애플리케이션을 설치하여 기능을 확장할 수 있습니다. 예를 들어, 웹 서버, 메일 서버, 비디오 관리 시스템(VMS) 등을 운영할 수 있습니다.

마우스 더블클릭 문제. 클릭이 풀렸다가 다시 클릭되는 문제.

마우스 몇번 떨어트려서 그런지 마우스가 더블클릭 문제.  클릭이 풀렸다가 다시 클릭되는 문제가 생겼는데 https://youtu.be/p5CB8QzJsDE?si=lzqHfgaStKdbxtCU 이 영상을 보고 좀 해결된거 같다 지켜봐야 알겠지만 뒤집에서 세번 내려치기

jupyter notebook package error

 jupyter 쓰고 대충 이런 문제였는데 Cannot import name ‘OpenAI’ from ‘openai’ 버전이 바뀌면서 패키지 내용이 좀 바뀌어서 방식이 바뀌어서 그런거였는데 업데이트 해도 업데이트가 안 되길래 헤맸는데 Jupyter 한번 껐다 켰더니 되더라.

final cut pro 클립 거꾸로 돌리기

 클립 선택 > 상단바에서 modify > Retime >Reverse Clip

final cut pro 오디오 클립 회색으로 뜨고 오디오 소리 안날때 작동안할 때

 final cut pro  오디오 클립 회색으로 뜨고 오디오 소리 안날때 작동안할 때 껐다 켰더니 해결됨 로딩에서 오류인듯

iphone Heic heif 사진 변환법

 아이폰으로 사진 찍으면 heic으로 저장되는데 캡쳐하면 Png로 저장된다.

gpt4 - marlin gpt3.5 dory

이미지
 <img alt="" data-original-height="192" data-original-width="774" height="79" src="https://blogger.googleusercontent.com/img/a/AVvXsEjW055m_YDdBiRovvS34knz8YrtINABey9-HdpfOLOUGApHBwsVA1Jo67TL-UXbnt3TfJbYlIsSSqj0MK52lYVY1QWD-OE0pnDCOI4SqkGEq0nhFqMZaHTWml9ZUF9qmIv82rBQ84ymJ8ASs4YWx2hsCNoGEqqVxMJnpO3CX4-sb_DDxm-w7zhlDWYus-JW" width="320" />

final cut pro 목소리 피치 변경

오디오 파일에(비디오라면 우클릭으로 detach audio)  effects의 audio에 pitch shifter 을 끌어다가 놓는다. 그리고 파라미터 클릭해서 조정하는데 mix 100%(안하면 원래 음이랑 같이들림) semitones 를 올리면 된다.