본문 바로가기

개발일지/Python159

[파이썬으로 익히는 말랑말랑 알고리즘] comprehension과 반복문 이부분은 확실히 if문 나열해줄땐 보긴했는데, for문을 comprehension 한건 처음봤다. 유용한것 같다. # comprehension 방식 string='ABCDEDE' array = [0 for i in range(len(string))] # 위의 코드는 아래의 코드와 같다. # array = [] # for i in range(len(string)): # array.append(0) print(array) 두번째. 각 숫자를 정렬하는 함수 # 각 숫자를 아래차순으로 정렬하고 각 몇개씩 있는지 세는 문제 # 방법1 내장 함수 이용법 from collections import Counter x = [4,0,4,4,1,8,8,2,2,5,0,6,5,6,0] # sort는 출력시, 보이기만 정렬한것같.. 2022. 5. 12.
파이썬 2, 3개의 값에서 중복없이 짝을 지을 수 있는 경우의 수 코드 및 공식 numbers = [4,6,7,9] result = [] # 시작숫자인 n1은 두번째 for문으로 들어가면서 고정된다. for n1 in numbers: # 그렇게 고정된 첫번째 for문에서 생성된 n1은 n1와 비교를 한다. for n2 in numbers: # 이때 n1 과 n2가 같으면 아무일 없이 넘어간다. 그리고 다시 두번째 for문의 시작으로 거슬러 올라간다. if n1 == n2: # 이걸 써줬기에 값이 같을때 거슬러 올라가는게 가능해졌다. continue result.append([n1,n2]) print(f'result: {result}') print(f'result length: {len(result)}') 두번째. 경우의 수만 구할때 # 순열의 공식 방식으로 풀이 # 경우의 수만 구할.. 2022. 5. 11.
파이썬 remove함수로 중복값 제거하 remove는 오늘 처음 알았는데, 내가 지정해준 범위에 해당되는 값 만큼 지워주는 함수다. 예를들어 2개 이상을 삭제 하길 원한다고 하면 오른쪽 부터 세었을때 1개가 초과하는건 모두 삭제된다. numbers = [2,22,7,8,9,2,7,3,5,2,7,1,3,2] print(numbers) idx = 0 while True: if idx >= len(numbers): break if numbers.count(numbers[idx]) >= 3: # remove는 중복값을 모두 제거해주는 함수같다. # 음... 여기선 지정해준 값이 2개 이상 즉, 2개는 2개이상에 걸리기 때문에 # 2이상은 모두 삭제가 된건가? # 맞다. 3으로 해주니깐 남는 2가 2개고 오른쪽부터 세었을때 지정 범위가 # 넘는건 삭제.. 2022. 5. 11.
파이썬 100명의 난수로 각 계층 방문자수 및 총 수입금액 계산기 import random age = random.sample(range(0,100),100) baby = [] children = [] youth = [] grownup = [] old = [] for i in age: if i 2022. 5. 11.