728x90
반응형

lst = [a for a in range(2, 101)] # [2,3,4,5,6..100] 리스트 만들기
for i in range(2, 100): # 2,3,4,5...99까지 나옴
for j in range(len(lst)):
if i > 2 and i%2 == 0: # 2는 배수처리하고 2 이상 짝수는 모두 2의 배수여서 계산하지 않음. 속도 향상
continue # 하단 코드 실행하지 않고 반복문으로 다시 실행
if i != lst[j] and lst[j]%i == 0: # i = 5, lst[j] = 5 는 계산하지 않음. lst[j] % i == 0 하면 i의 배수인지 확인
lst[j] = 0 # 0을 삭제할 값으로 설정. 여기사 del을 사용하면 range(len(lst))다 달라져 에러 발생
for i in range(len(lst)-1, 0, -1): # 뒤에서부터 삭제. 앞아서부터 하면 인덱스가 달려져 에러 발생
if lst[i] == 0: # 0 값을 삭제할 항목
del lst[i] # 리스트에서 해당 인덱스 항목 삭제
for s in lst:
print(s,end=' ')

728x90
반응형
'프로그램' 카테고리의 다른 글
| [코틀린] Kotlin : 컬렉션(Collection, List, Set, Map) (0) | 2022.12.29 |
|---|---|
| [파이썬] 문제 : 텍스트 파일의 내용 수정 (0) | 2022.12.29 |
| [파이썬] 문제 : 동전 전지기 10번, 앞면/뒷면 연속 나오는 위치 찾기 (0) | 2022.12.29 |
| [파이썬] 문제 : 과일 속성(단단한과일,물렁한과일 등)으로 과일 추천 (0) | 2022.12.29 |
| [파이썬] 문제 : 학년별 할인률 계산 (0) | 2022.12.29 |
댓글