# 문자열을 정수로
num_str = "123"
num = int(num_str) # 123
# 문자열을 실수로
float_str = "123.45"
num = float(float_str) # 123.45
print(ord('a')) # 97
print(ord('A')) # 65
print(chr(97)) # 'a'
print(chr(65)) # 'A'
a = 'd'
b = 'G'
a.islower() # True
b.isupper() # True
num = 10
binary = bin(num)
print(binary) # '0b1010'
num = 10
# format 함수 사용 ('b'는 binary를 의미)
print(format(num, 'b')) # '1010'
# f-string 사용 (추천)
print(f"{num:b}") # '1010'
num = 5
# 5자리로 맞추고 빈 곳은 0으로 채움 ('05b')
print(f"{num:05b}") # '00101'
f-string 내부에서 변수 n을 사용하려면 중괄호 {n}을 한 번 더 감싸주면 됩니다.
num = 5
n = 5 # 자릿수 (변수)
# {n}이 먼저 5로 바뀌어 -> {num:05b} 처럼 동작함
result = f"{num:0{n}b}"
print(result) # 00101
참고: 반대로 2진수 문자열을 다시 정수로 바꿀 때는 int('1010', 2)를 사용하면 됩니다.
s = '1111'
result = list(s)
print(result) # ['1', '1', '1', '1']
만약 숫자로 변환하고 싶다면 map을 함께 사용하면 됩니다.
result_int = list(map(int, s))
print(result_int) # [1, 1, 1, 1]
s = "Hello World"
result = s.split()
print(result) # ['Hello', 'World']
join)map과 join을 사용합니다.int)int(문자열, 2)를 사용하면 2진수 문자열을 10진수 정수로 바꿀 수 있습니다. robotai.tistorynum_list = [1, 1, 1]
# 1단계: 숫자 리스트 -> 문자열 '111' 변환
# map(str, num_list)로 각 숫자를 문자로 바꾼 뒤 join으로 합침
binary_str = "".join(map(str, num_list))
print(binary_str) # '111'
# 2단계: 2진수 문자열 -> 10진수 변환
decimal_num = int(binary_str, 2)
print(decimal_num) # 7
decimal_num = int("".join(map(str, [1, 1, 1])), 2)
이 방식은 리스트 안의 숫자가 0과 1로만 이루어져 있을 때 유용합니다.