파이썬... 몰랐던 것들이나 새로 봐서 헷갈리는 것들 위주로 정리하는데
자료형은 낯선 개념이 많아서 그냥 한 번에 싹 다 정리 좀 해봄

📜 자료형과 기본형

  • type() 자료 형식 확인

오 JS에서도 typeof()로 확인하는데 역시 다 비슷해비슷해~

🔡 문자

문자열 연산자

  • + 문자열 연결 연산자
  • * 문자열 반복 연산자
  • [] 문자 선택 연산자(인덱싱)
    • 파이썬도 다행히 제로 인덱스를 사용한다
  • [:] 문자열 범위 선택 연산자(슬라이싱)
    • 범위 지정 시 마지막 숫자를 포함하지 않는다
    • 둘 중 하나 생략이 가능하다
      • 뒤의 값 생략: 자동으로 가장 최대 위치(마지막 글자)까지
      • 앞의 값 생략: 가장 앞쪽의 위치(첫 번째 글자)까지 지정

len() 문자열 길이 구하기

🔢 숫자

문자열 연산자

  • 사칙연산
  • // 나머지의 몫만 구하기
  • % 나머지만 구하기

//는 첨보는거당

⌨️ 입력

input() 사용자 입력

괄호 안에 입력한 내용을 프롬프트 문자열이라고 한다
→ 당연히 다 문자열로 받아들임

캐스팅: 문자열을 숫자로

  • int() → 소수점이 있는 숫자 형식의 문자열을 이거로 바꾸려고 하면 에러
  • float()

캐스팅: 숫자를 문자열로

  • str()

🤓 문자열을 더 알아보자

사실 여기가 어려워서 정리를 해야겠다고 생각했다. 왤케 헷갈려!

format() 함수

"{}".format(10)
"{}, {}".format(10, 20)

중괄호{}를 포함한 문자열 뒤에 마침표(.)를 찍고 format() 함수를 사용한다.
중괄호의 개수와 format 함수 괄호 안 매개변수의 개수는 반드시 같아야 한다.

👉 앞쪽에 있는 문자열의 {} 기호가 format() 함수 괄호 안에 있는 매개변수로 차례로 대치되면서 숫자가 문자열이 된다

정수 출력

format() 함수를 통해 정수를 다양한 형태로 출력할 수 있다.

output_a = "{:d}".format(52)

output_b = "{:5d}".format(52)
output_c = "{:10d}".format(52)


output_d = "{:05d}".format(52)
output_e = "{:05d}".format(-52)
  • {:d} → 정수를 출력하겠다! (매개변수로 정수 지정)
  • {:[n]d} → 특정 칸에 맞춰서 숫자를 출력하는 형태
  • {:0[n]d} → 빈칸을 0으로 채우는 형태로 부호가 있을 때는 맨 앞자리를 부호로 채운 후 나머지 빈 곳을 0으로 채운다.

따라서 결과는 아래와 같다.

52
   52
        52
00052
-0052

오... 머랄까 이거 다 정규표현식 ㅠ 같구먼 ㅠ

output_f = "{:+d}".format(52)
output_g = "{:+d}".format(-52)
output_h = "{: d}".format(52)
output_i = "{: d}".format(-52)
  • {+} 기호 → 양수와 음수 기호 표현 가능!
    +있다고 무조건 +로 바꿔 쓰는 거 아님...
  • → 앞에 공백을 두어 기호 위치를 비운다면 함수에 입력한 기호가 표현된다
+52
-52
 52
-52
output_h = "{:+5d}".format(52)
output_i = "{:+5d}".format(-52)
output_j = "{:=+5d}".format(52)
output_k = "{:=+5d}".format(-52)
output_l = "{:+05d}".format(52)
output_m = "{:+05d}".format(-52)
  • {=} → 기호를 앞으로 밀어준다 (빈칸 앞에 붙이기)
  +52
  -52
+  52
-  52
+0052
-0052

* 기호의 순서가 중요하다!

부동 소수점 출력

output_a = "{:f}".format(52.723)
output_b = "{:15f}".format(52.723)
output_c = "{:+15f}".format(52.723)
output_d = "{:+015f}".format(52.723)
  • {:f} → float 자료형 출력을 강제 지정

나머지 기능은 앞에서 사용하는 것 그대로 사용이 가능하다.

52.723000
      52.723000
     +52.723000
+0000052.723000
output_a = "{:15.3f}".format(52.723)
output_b = "{:15.2f}".format(52.723)
output_c = "{:15.1f}".format(52.723)
  • {.} → 소수점 아래 자리수 지정이 가능하다
         52.723
          52.72
           52.7
output_a = 52.0
output_b = "{:g}".format(output_a)
  • {:g} → 의미 없는 소수점 제거
52.0
52

문자열 결합

join()

👉 리스트 등의 시퀀스를 하나의 문자열로 결합

문자열 슬라이싱

[start:end:step]

👉 문자열 일부 선택

대소문자 바꾸기

  • upper() | lower()
  • capitalize()
  • title()
    👉 원본을 변화시키지 않는 비파괴적 함수이다
    👉 문자열의 첫 글자만 대문자로 변환
    👉 문자열 모든 단어의 첫 글자를 대문자로 변환

문자열 공백 제거

strip() | lstrip() | rstrip()

문자열 구성 파악

isOO()
생각해보면 이거도 JS로 코테 풀 때 진짜 많이 썼던건데! 확실히 겹치는게 많은 것 같다. 하지만 아직도 파이썬 너무 낯설어...!

  • isalnum()
  • isalpha()
  • isidentifier()
  • isdecimal()
  • isdigit()
  • isspace()
  • islower()
  • isupper()

뭔가 다 대충 뭔지 알 것 같은 이름 굳이 외우지 말고 이런게 있다~ 이런 기능이 아닐까~ 익숙해지기만 하면 될 것 같다.

문자열 찾기

  • find() | rfind()
  • index()
"안녕안녕안녕하세요".find("안녕")
# 결과: 0
"안녕안녕안녕하세요".rfind("안녕")
# 결과: 2

👉 문자열 내부에 특정 문자가 어디에 위치하는 지 확인할 때 사용한다. (r은 right를 의미함. 오른쪽 끝부터 찾기) 왼쪽 | 오른쪽 부터 문자열이 어디에 처음 등장하는지 찾아내어 인덱스를 반환한다.

👉 index() 메서드는 특정 문자열이 처음 나타나는 위치 반환, 못 찾으면 오류

in 연산자

print("안녕" in "안녕하세요")
# 결과 : True
print("잘자" in "안녕하세요")
# 결과 : False

👉 문자열 내부에 어떤 문자열이 있는지 확인할 때 사용, boolean 값을 반환한다!

문자열 자르기

split()
👉 실행 결과로 리스트가 나온다.
기본 구분자는 공백이다.

f-문자열

f'문자열{표현식}문자열'

👉 괄호 안에는 어떤 표현식이든 넣을 수 있다!

format과 f-문자열은 상황에 따라 더 좋은 쓰임이 있다. 구분해서 쓰면 좋을듯 !

  • format 함수: 문자열 내용이 너무 많을 때, 데이터를 리스트에 담앙서 사용할 때 좋음

문자열 대체

replace()

👉 문자열 내의 특정 부분을 다른 문자열로 대체


느낀점

뒤에 문제 풀다가... 반환값을 제대로 인지하지 못한 상황에서 무척 간단해보이는 문제를 틀렸다. JS만 쓰다가 오니까... 어유 속터져~!! 그래도 이거도 열심히 해봐야지. 어렵다기보단 헷갈리고... 더 잘하고 싶어!!! 뿌앵

profile
영차영차 😎

0개의 댓글