여니의 Side Project/제주코딩베이스캠프 서포터즈 2기

[제주코딩베이스캠프] 눈떠보니 코딩 테스트 전날 | 문제1. 암호해독

여니's 2021. 7. 14. 10:39


** 인코딩 **

: 문자나 기호들의 집합을 컴퓨터에서 표현하는 방법, 문자 코드라고도 한다.

 

 

 

1. 문자열 및 공백제거 함수 : strip(),lstrip(),rstrip()

(1) strip('삭제할 문자들')

> 문자열 양쪽에 있는 해당 문자 및 공백을 삭제한다.

만약 strip()라면 공백제거

 

(2) lstrip('삭제할 문자들')

>  왼쪽의 특정 문자 삭제하기

 

(3) rstrip('삭제할 문자들')

> 오른쪽의 특정 문자 삭제하기

 


2. 문자열 나누기

split('기준 문자')

: 공백을 기준으로 문자열을 분리하여 리스트로 결과를 반환해준다.

split() > 공백을 기준으로 나눈다.


3. 문자열 바꾸기

replace('바꿀문자열','새문자열')

바꿀 문자열 -> 새문자열

replace() 함수는 중복이 가능하다.

'011011011'.replace('0','!').replace('!','+').replace('+','~')

# 결과 : ~11~11~11

 

4. 구분자 문자열과 문자열 리스트 연결하기

join(리스트)

text=['   + -- + - + -   ',
'   + --- + - +   ',
'   + -- + - + -   ',
'   + - + - + - +   ']

print(''.join([chr(int(i.strip().replace(' ','').replace('+','1').replace('-','0'),2)) for i in text]))

 


** 아스키 코드 변환하기 ** 

1. 문자 -> 아스키코드 값으로 변환

ord('문자') 함수

print(ord('A')) #65
print(ord('a')) #97

 

 

2. 아스키코드 값 -> 문자로 변환

chr(아스키 코드값)

print(chr(65)) #A
print(chr(97)) #a
print(chr(0x32)) #2

 


ex) 구구단 출력하기

example=[f'{i} X {j} = {i*j}' for i in range(2,10) for j in range(2,10)]
print(example)

 

문자열 포매팅 | f-string

:변해야하는 값을 포매팅 할 값으로 잡고 설정해주면 원하는대로 문자열 출력이 가능해진다.

 

문자열 앞에 f를 붙여주고., 중괄호 안에 직접 변수 이름과 출력하고자 하는 문자열을 넣으면 된다.

f'문자열 {변수} 문자열'

변수는 중괄호로 감싸줘야 한다.

 

?

만약 중괄호 자체를 출력하고자 한다면?

{{}} 중괄호를 2번 묶어주면 된다.