본문 바로가기
728x90

프로그래밍49

python, 리스트를 사용한 FIFO구조의 큐 운용 리스트 사용해서 작업을 하다가 큐가 필요해져서 만들게 되었음. 리스트를 사용해서 만들었고, 리스트의 연산기능을 사용했음1행 :  큐로 사용할 리스트 이름3행 : 데이터를 큐에 넣는 기능9행: 큐에서 데이터를 하나 빼내오는 기능하지만,,, q_pop() 에 부족한 부분이 있으니, q_list멤버가 없다면 12행은 에러가 발생한다(아래 그림참고) 16,17행 :  데이터를 넣고20행 : 마지막 데이터까지 꺼내지고, 큐는 빈상태가 된다21행: 비어있는 큐에서 데이터 꺼내기 시도    이를 보완하기 위해서 len()사용해서 큐의 데이터 갯수를 확인한다11행 : 큐의 데이터 갯수 확인12행 : 데이터를 꺼내기 시도13행 : 성공한다면 큐에서 데이터를 하나 삭제하고15행 : 큐의 데이터가 없다면 비어 있는 값으로 .. 2024. 12. 29.
python, exe 만들었는데 알약에 잡히다! (feat. pyinstaller) pyinstaller를 사용해서 exe 만들었는데, 몇일 사용하다보니 알약에 잡히더라! 바이러스 판단되어 치료 당함. ㅎㅎ  수년전에도 이 비슷한 경험 있어서, 시간이 꽤 지났으니 나아졌겠지 하며무심하게 그냥 썼더니,,, 역시나,,,해결을 위해서 시도해본 기억을 메모로 남겨본다 내가 사용하고 있던 것은 현시점 최신버전pyinstaller와 파이썬은 3.11 이었다 exe를 만들때도, 사용시에도 바이러스 탐지되지는 않길래...(과거 경험엔 pyinstaller를 설치하면서부터 바이러스 에러 였던듯? 한데...)오! 파이썬 발전했네,,, 알약도 열심히 하나보네! 감탄하면서 그냥 넘어갔는데,,,똭! 알약에 잡혀버림..해결을 위해서.... 찾아보기 시작..   구글링 하다보니,  pyinstaller 5 혹은 .. 2024. 12. 29.
python, 데이터프레임 - 데이터프레임 합치기(concat, reset_index()는 거들뿐) 데이터 프레임을 합쳐야 한다면, concat() 명령이 준비되어 있다. merge(), join() 명령은 다음에... df1과 df2 라는 데이터프레임이 있고, 2개를 결합해서 df라는 데이터프레임을 만드는 상황을 가정해 보자 아래와 같이 concat()명령을 수행하면 결합된 형태의 df를 얻을 수 있다. 인덱스가 0-1-2-0-1 인 것이 싫다면, 아래처럼 인덱스를 다시 설정 할 수 있다. 혹은 ignore_index=True 라는 옵션을 주어도 같은 결과를 얻는다. 그런데 말입니다.... 아래와 같은 df1과 df2에 대해서 concat()을 수행하면 어떻게 될까? 아래처럼 서로다른 컬럼명이 구분되어 원하는 형태와 다른 모양이 얻어지므로 알아둡시다. 그렇다면! 컬럼명이 같더라도 아래처럼 가로방향으로.. 2023. 6. 24.
python, 데이터프레임 - 헤더, 인덱스 제거하고 파일 저장 데이터프레임 작업이 되었으나, 인덱스나 컬럼명이 필요하지 않을때가 있는데, 저장할때 옵션을 주는 방법이 있다. to_excel(), to_csv() 모두 사용가능하다 다음과 같은 df 라는 데이터프레임이 있다면, 아래 같이 index=False 혹은 header=False 를 사용하면, 아래와 같은 결과를 얻을 수 있다. b0:인덱스제거 b1:컬럼명 제거 b2:인덱스제거, 컬럼명제거 순서번호 정도 밖에는 의미가 없는 인덱스를 제거할때 좋을 듯 하다. 2023. 6. 22.
python, csv - 한글깨짐 csv 파일이 xlsx 파일보다 데이터프레임 사용에 훨~씬 효과적인 것을 알게되었는데, csv 사용시 한글사용시 원활하지 않은 부분있었다. df라는 데이터프레임의 내용이 아래와 같을때 csv저장하면, 엑셀에서보면 아래처럼 한글이 확인되지 않는 현상 그런데 메모장에서는 잘 보임? 찾아보니, 그런 현상 해결 방법이 역시 존재하더라는,,,ㅎ 한글체계에 관한 깊은 이해는 어렵고, 해결방법에 집중해서 살펴보자. 위의 코드를 실행하면 아래와 같은 결과를 확인할 수 있다. utf-8-sig 혹은 cp949 로 encoding 설정해주어야, 제대로된 값이 보여진다.. 2023. 6. 22.
python, 데이터프레임() - 리스트로 데이터프레임 생성(행/열) 리스트 자료가 준비되어 있고, 데이터프레임에 행으로 추가하기와 열로 추가하기를 해보았는데, https://nothing-else-matters.tistory.com/28 python, 데이터프레임(1) - 리스트를 행으로 추가하기 데이터프레임 사용하다보면 여러가지 상황을 만나게 되는데, 새롭게 발생하는 데이터들을 리스트로 만들거나 혹은 받아오거나 해서 전체 집계를 위한 데이터프레임에 행으로 계속 추가하면서 nothing-else-matters.tistory.com https://nothing-else-matters.tistory.com/31 python, 데이터프레임(3) - 리스트를 열로 추가하기 python, 데이터프레임(1) 에서 리스트를 행으로 추가해 봤는데, python, 데이터프레임(1) - .. 2023. 6. 22.
728x90