사소한 아이의 소소한 스킬/Python

개발을 하다보면 경로 관련해서 계산해야 할 때가 있다. 물론 QFileDialog등과 같은 api를 이용해서 선택한 파일의 path를 가져올 수도 있지만... 현재 실행되는 위치에서 상대적으로 위치를 계산하거나.. 절대적인 경로를 가져오거나 할때는 굳이 FileDialog를 안쓰고 가져올 수도 있다... 그 방법 들이다..! 현재 폴더 가져오기 os.getcwd() Output: C:\Users\Administrator\PycharmProjects\pythonProject2\ 디렉토리 위치 변경하기 os.chdir("C:\Program Files (x86)\ESTsoft") 절대 경로 가져오기 print(os.path.abspath("")) Output: C:\Users\Administrator\Pych..
이번엔 평균 구하기다...... 또 다시 C#을 먼저 말해본다면.. 리스트에 .Sum(), .Average() 함수가 존재하여 호출만 해주면 끝.... C# 너무 편하죠............... 파이썬도 쉽게 사용하기 위한 언어니깐 당연히 편한게 있겠지!!!! 바로 코드 ㄱㄱ import statistics arr1 = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100] arr2 = [15, 26, 48, 59, 57, 68, 35, 24] # 평균 구하기 result1 = statistics.mean(arr1) result2 = statistics.mean(arr2) # 출력 print(f"average1 : {result1}") print(f"average2 : {result..
프로그램을 개발하다보면.... 특정 모듈이... 특정 함수가.. 시간이 얼마나 걸리는지 체크해야할때가 있다. WPF의 경우 Stopwatch라는 클래스가 따로 존재하여 start, stop함수를 통해 계산했었는데... 파이썬은...어떤함수가 있을지 알아보도록 하자.. 파이썬의 기본 모듈인 time 모듈을 확인하면 시간측정을 할 수 있다 바로 코드 ㄱㄱ import time start = time.time() print("시간측정") print("some function....") end = time.time() print(f"{end - start:.5f} sec") Output: 0.00000 sec 너무 간단한 print문 2개라.. 0.000초가 나온다... 좀 시간이 걸릴만한걸하면... impor..
리스트 역변환시키기 a=[“10”,”9",”8",”7"] print(a[::-1]) a.reverse() Output: ['7', '8', '9', '10'] # a[::-1]과 a.reverse()의 차이점 # a[::-1]의 경우 실 데이터 변경없이 거꾸로 출력만 진행하되 # reverse의 경우 실 데이터 자체를 역변환 시켜버림으로써 이 다음 작업 진행 시에도 역변환이 진행되었다는 것을 알고 있어야 한다. 리스트 합치기 a=[‘a’,’b’,’c’,’d’] b=[‘e’,’f’,’g’,’h’] for x, y in zip(a, b): print(x,y) Output: a e b f c g d h 리스트 내에서 빈번한 값 찾기 a = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4] print..
def wav_print(file_path): # 파일 읽어오기 file = open(file_path, "rb") # 44바이트의 헤더정보 가져오기 data = file.read(44) # 44바이틔 헤더 정보를 Dictionary 형태로 저장하기 file_header = {"name": file_path, "ChunkID": data[0:4], "ChunkSize": int.from_bytes(data[4:8], byteorder='little'), "Format": data[8:12], "Subchunk1ID": data[12:16], "Subchunk1Size": data[16:20], "AudioFormat": int.from_bytes(data[20:22], byteorder='little')..
파이썬은 기본적으로 아래와 같이 타입을 설정하지 않고 변수를 설정한다. # 자동적으로 int형 AAA = 22 # 자동적으로 string형 BBB = "string" # 자동적으로 list CCC = [1,2,3,4] 이러한 방식은 내가 사용하던 C#과 너무 헷갈리고.. 어떠한 타입으로 선언되는건지 헷갈린다. 선언자체는 문제없지만 해당 변수를 가지고 놀때 굉장히 헷갈린다...(일단 나는....) C#의 경우 int AAA = 22 string BBB = "string" List CCC = new List() { 1, 2, 3, 4 } ; 얼마나 보기 편한가.. 물론 C#에서도 var 변수가 있어서 python처럼도 선언할 수 있다...하지만.. var변수를 잘 안쓰고... 뭔가 명확하게 형을 선언하는것을..
주지님
'사소한 아이의 소소한 스킬/Python' 카테고리의 글 목록