250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- A태그
- position
- with\
- 프로그래머스
- 알고리즘
- itertools
- time()
- 내일배움캠프
- Display
- Level1
- googleappscript
- googlesheet
- 함수성능평가
- vscode
- gitignore
- 우선순위
- WIL
- 가상환경
- python
- 데이터넥스트레벨챌린지
- AI 5기
- git #github #내일배움캠프
- cte
- 데이터리안
- 데벨챌
- Iterator
- venv
- iterable
- 그로스해킹
- 함수실행시간
Archives
- Today
- Total
05의 개발 계발
[페어프로그래밍] 230502 3진법 뒤집기 | divmod int 본문
728x90
페어프로그래밍 결과 코드
# 페어프로그래밍으로 제작한 코드
def solution(n):
#n을 3진법으로 변환 → divmod로 만들기
#변환된 3진법을 뒤집기 → reverse ▶▶▶ += str(y)로 reverse 불필요!
#3진법을 10진법으로 변환 → 간단히 자릿수별 곱 ▶▶▶ int(k,3)로 바로 10진수 정수로 변환
#값 반환
k = ""
while n > 0:
n,y=divmod(n, 3)
k += str(y)
return int(k, 3)
+ 테스트용 전체코드
더보기
import os
os.system("cls")
def solution(n):
#n을 3진법으로 변환 → divmod로 만들기
#변환된 3진법을 뒤집기 → reverse ▶▶▶ += str(y)로 reverse 불필요!
#3진법을 10진법으로 변환 → 간단히 자릿수별 곱 ▶▶▶ int(k,3)로 바로 10진수 정수로 변환
#값 반환
k = ""
while n > 0:
n,y=divmod(n, 3)
k += str(y)
return int(k, 3)
######### 테스트공간 ##########
n1= 45
n2= 125
print("7",solution(n1))
print("229",solution(n2))
리팩토링 코드
# 리팩토링 | 변수명수정
def solution(n):
#n을 3진법으로 변환 → divmod로 만들기
#변환된 3진법을 뒤집기 → reverse ▶▶▶ += str(y)로 reverse 불필요!
#3진법을 10진법으로 변환 → 간단히 자릿수별 곱 ▶▶▶ int(k,3)로 바로 10진수 정수로 변환
#값 반환
result = ""
while n > 0:
n,y=divmod(n, 3)
result += str(y)
return int(result, 3)
흠터레스팅 코드
# n>0 대신 n이 0일경우 False임을 사용, divmod 대신 %연산으로 나머지값을 str으로 추가하여 3진법변환
def solution(n):
tmp = ''
while n:
tmp += str(n % 3)
n = n // 3
answer = int(tmp, 3)
return answer
시사점 or 새로이 알게된 점
int(<data>,n)
-내장함수
-<data>를 n진수로 인식하여 10진수 정수로 변환 / n을 생략시 기본 10진수 정수로 변환
+int 내장함수 추가정보
더보기
<from GPT>
파이썬에서 `int()` 함수는 정수형으로 변환하기 위해 사용됩니다. `int()` 함수는 문자열, 부동소수점 수, 2진수, 8진수, 10진수, 16진수 등 다양한 데이터 타입을 인자로 받아 정수형으로 변환합니다.
`int()` 함수는 기본적으로 인자로 받은 값을 10진수 정수로 변환합니다. 예를 들어, `int('123')`은 문자열 `'123'`을 10진수 정수 `123`으로 변환합니다.
`int()` 함수에 두 번째 인자를 추가하면 해당 진법으로 변환할 수 있습니다. 두 번째 인자는 변환하려는 값의 진법(base)을 나타냅니다. 예를 들어, `int('1010', 2)`는 2진수 문자열 `'1010'`을 10진수 정수 `10`으로 변환합니다. 마찬가지로, `int('A7', 16)`은 16진수 문자열 `'A7'`을 10진수 정수 `167`로 변환합니다.
또한, `int()` 함수는 부동소수점 수를 정수형으로 변환할 때도 사용됩니다. 이 경우, 소수점 이하의 값은 버려지고 정수부만 반환됩니다. 예를 들어, `int(3.14)`는 부동소수점 수 `3.14`를 정수형 `3`으로 변환합니다.
`int()` 함수는 예외를 발생시키는 경우도 있습니다. 예를 들어, `int('abc')`와 같이 정수로 변환할 수 없는 문자열을 입력하면 ValueError가 발생합니다.
728x90
'내일배움캠프 AI > 페어프로그래밍' 카테고리의 다른 글
[페어프로그래밍] 230516 신규아이디추천_Lv.1 | replace() , [:] 슬라이싱 (0) | 2023.05.16 |
---|---|
[페어프로그래밍] 230503 둘만의 암호 (0) | 2023.05.03 |
[페어프로그래밍] 230501 비밀지도 | bin Zfill (0) | 2023.05.02 |
[페어프로그래밍] 230428 옹알이(1) | count (0) | 2023.04.28 |
[페어프로그래밍] 230428 모스부호(1) | .split (0) | 2023.04.28 |