글

라벨이 파이썬문자열인 게시물 표시

프로그래머스 파이썬 기초 트레이닝 :: 문자 개수 세기(chr, ord, count 활용)

이미지
           문제 설명  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181902 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 11 리스트(배열) - 문자 개수 세기  Lv.0 문제 내용  알파벳 대소문자로만 이루어진 문자열 my_string이 주어질 때, my_string에서 'A'의 개수, my_string에서 'B'의 개수,..., my_string에서 'Z'의 개수, my_string에서 'a'의 개수, my_string에서 'b'의 개수,..., my_string에서 'z'의 개수를 순서대로 담은 길이 52의 정수 배열을 return 하는 solution 함수를 작성해 주세요. my_string "Programmers" result [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0] 문제 이해 아스키코드 변환, 문자 ↔ 숫자 변환하는 함수인 chr(), ord() 활용 문제 문자열 문자 확인은 in 멤버 연산자, 개수 세기는 count  chr(num) : 숫자를 문자로 변환 ord(char) : 문자를 숫자로 변환   ----------------------------------- 다양한 iterable 선언 방식    문자열  for i in  ' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ' for i in  'abcdefghijklmnopqrstuvwxyz'.upper()+'abcdefghijklmno...

프로그래머스 파이썬 기초 트레이닝 :: 간단한 논리연산 (논리연산자, 비트연산자 *)

이미지
          문제 설명  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181917 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 8 조건문, 문자열 - 간단한 논리연산  Lv.0 문제 내용  boolean 변수 x1, x2, x3, x4가 매개변수로 주어질 때, 다음의 식의 true/false를 return 하는 solution 함수를 작성해 주세요. (x1 ∨ x2) ∧ (x3 ∨ x4) x1                x2           x3                 x4           result false           true           true           true           true true           false           false           false           false 문제 이해 [입력] boolean 변수 (x1, x2, x3, x4)  [출력] boolean 변수 (x1 ∨ x2) ∧ (x3 ∨ x4) 이 식을...

프로그래머스 파이썬 기초 해석 :: 주사위 게임 2 (set)

이미지
    프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181930 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 5 조건문 - 주사위 게임 2     Lv.0 문제 설명 1부터 6까지 숫자가 적힌 주사위가 세 개 있습니다. 세 주사위를 굴렸을 때 나온 숫자를 각각 a, b, c라고 했을 때 얻는 점수는 다음과 같습니다. 세 숫자가 모두 다르다면 a + b + c 점을 얻습니다. 세 숫자 중 어느 두 숫자는 같고 나머지 다른 숫자는 다르다면 (a + b + c) × (a2 + b2 + c2 )점을 얻습니다. 세 숫자가 모두 같다면 (a + b + c) × (a2 + b2 + c2 ) × (a3 + b3 + c3 )점을 얻습니다. 세 정수 a, b, c가 매개변수로 주어질 때, 얻는 점수를 return 하는 solution 함수를 작성해 주세요. 제한 사항 a, b, c는 1이상 6이하의 정수입니다. 문제 이해 [입력] a, b, c 정수 [출력] 정수  if문으로 a, b, c 정수의 값이 같은지 판단해서, 사칙연산  ※ 주의) if, elif, else 순서 가 중요하다. 같은 코드라도 if, elif, else 문 순서가 다르면 값이 다르게 나온다. 더 범위가 넓은 값은 else 쪽으로 두고, 범위가 가장 좁은 쪽을 if 로 둬야한다.  ------------------------ 내가 푼 풀이 처음 쓴건 아래처럼 일반적인 if문  def solution(a, b, c): if a==b==c : answer = (a+b+c)*(a**2 + b**2 + c**2)*(a**3+b**3+c**3) elif a==b or a==c or b==c : answer = (a+b+c)*(a**2 + b**2 + c**2) ...

프로그래머스 파이썬 기초 해석 :: 조건 문자열(eval, replace)

이미지
프로그래머스 URL  https://school.programmers.co.kr/learn/courses/30/lessons/181934 프로그래머스 코딩테스트 카테고리  코딩 기초 트레이닝 Day 4 연산, 조건문 - 조건 문자열 Lv.0 문제 설명   문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다. 두 수가 n과 m이라면 ">", "=" : n >= m "<", "=" : n <= m ">", "!" : n > m "<", "!" : n < m 두 문자열 ineq와 eq가 주어집니다. ineq는 "<"와 ">"중 하나고, eq는 "="와 "!"중 하나입니다. 그리고 두 정수 n과 m이 주어질 때, n과 m이 ineq와 eq의 조건에 맞으면 1을 아니면 0을 return하도록 solution 함수를 완성해주세요. 문제 이해  문자열 ineq, eq  정수 n, m  출력값 : 정수 0 / 1 (False/True 활용 가능) 조건에 맞는지 확인하기 위한 if문 작성 내가 쓴 코드      def solution(ineq, eq, n, m): if ineq == "<" : return int(n <= m) if eq == "=" else int(n < m) return int(n >= m) if eq == "=" else int(n > m) 중첩 if문 활용, ineq 변수의 "<" or ">" 먼저 확인하고, "="인지 "!" 인지 판별해서 값 출력  결과값은 정수여야하는데, bool ...

프로그래머스 파이썬 기초 해석 :: 홀짝에 따라 다른 값 반환하기(sum, range, 제곱하는 3가지 방법)

이미지
    프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181935 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 4 연산, 조건문 - 홀짝에 따라 다른 값 반환하기 Lv.0 문제 설명 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요. 제한 사항 1 ≤ n ≤ 100 문제 이해 1. 홀/짝 구분 2. 홀수면 홀수때만 합하기  2-2. 짝수면 짝수때만 제곱해서 합하기  ------------------------   내가 푼 풀이 if문이랑 for문을 썼고, 제곱은 math 패키지의 pow() 메서드를 사용했다.    import math def solution(n): answer = 0 if n % 2 : answer += i for i in range(1, n+1, +2) else: for i in range(0,n+1,+2): answer += math.pow(i, 2) return answer 위 코드를 한 줄로 표현하면, 아래와 같은데,, 보시다시피 길고,, 별로다 return sum(i for i in range(1, n+1, +2)) if n % 2 else sum(math.pow(i, 2) for i in range(0,n+1,+2) ) 업그레이드 (배운점/개선사항)   1. range(start, stop, step)  1번째 매개변수: start 은 시작하는 값.  2번째 매개변수: stop-1 까지 돌아감. 따라서, 정수 n값까지 돌릴려면 n+...

프로그래머스 파이썬 기초 해석 :: n의 배수 (boolen값, not 활용)

이미지
   프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181937 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 4 연산, 조건문 - n의 배수   Lv.0 문제 설명 정수 num과 n이 매개 변수로 주어질 때, num이 n의 배수이면 1을 return n의 배수가 아니라면 0을 return하도록 solution 함수를 완성해주세요. 제한 사항 2 ≤ num ≤ 100 2 ≤ n ≤ 9 문제 이해 [입력] num, n 정수  [출력] 리턴값은 정수 0 또는 1  %로 나머지 연산, if문으로 조건문 생성 ------------------------ 내가 푼 풀이 1. 처음 쓴건 아래처럼 일반적인 if문  def solution(num, n): if num % n == 0 : return 1 else : return 0 2. 한줄 if문도 가능할 것 같아서 해봄 def solution(num, n): result = 1 if num%n == 0 else 0 return result 개선할 사항 나는 한줄 if 문의 값을 result라는 변수에 넣고, 리턴값으로 줬는데 굳이 변수로 안주고 한줄 if문 자체를 바로 리턴하는게 가능하다 def solution(num, n): return 1 if num%n == 0 else 0 #return 1 if num%n == 0 else return 0 -> 불가능. return은 하나만 다른 문제풀이 해석  if문 대신,   bool 값 을 활용 해서 간결하게 작성이 가능하다 .  문제에서 0 또는 1을 출력값으로 했는데, 이는 곧 bool값에서는 False 또는 True의 값이 된다.  0은 논리적으로 False이고, 0 이외의 숫자는 True...

프로그래머스 파이썬 기초 해석 :: 문자열 섞기(join, zip, append/insert)

이미지
  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181942 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 3 연산 - 문자열 섞기  Lv.0 문제 설명 길이가 같은 두 문자열 str1과 str2가 주어집니다.  두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요. 제한 사항 1 ≤ str1의 길이 = str2의 길이 ≤ 10  str1과 str2는 알파벳 소문자로 이루어진 문자열입니다. 문제 이해 [입력값] str1, st2 둘다 문자열  [출력값] answer 문자열 반복문 필요 - 두 문자열의 [0]자리 출력, [1] 자리 출력 ,,, 이 필요하기 때문에  (while문 보다는 for문)  ------------------------ 내가 푼 풀이 def solution(str1, str2): answer = '' for i in range(len(str1)): answer += str1[i] answer += str2[i] return answer 고칠점  1. for문   for문의 범위를 설정할때, range()를 안쓰고 len(str1)만 써서 오류가 났다.  다른 프로그래밍 언어의 for문법이랑 헷갈렸던 것 같다. 파이썬의 for문은 몇부터 몇까지 돌리겠다는 범위 자체를 in 자리 뒤에 써야한다. range()를 많이 쓸 듯  2. 문자열 더하기 answer += str1[i] + str2[i] 다른 문제풀이 해석  1. 리스트 컴프리헨션 + join으로 문자열 합치기  def solution(str1, str2): answer = ''.join([str1[i] + str2[i] ...

프로그래머스 파이썬 기초 해석 :: 홀짝 구분하기 (한줄 if문)

이미지
  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181944 프로그래머스 코딩테스트 카테고리  코딩 기초 트레이닝 Day 2 출력, 연산 Lv.0  문제 설명 자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을, 홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요. 문제 이해 1) if문으로 홀수 / 짝수 판별하기  2) 문자열 포매팅을 활용해서 문자열을 출력하기 포매팅 방법은 3가지이다. ① % 기호를 활용한 포매팅, ② format함수 활용, ③ f string 사용 (각각에 대한 자세한 설명은 요기로  ) 문제 풀이 난 평범하게 f string을 써서 풀었다.   a = int(input()) if a % 2 == 0 : print(f"{a} is even") else: print(f"{a} is odd") 한줄 if 문  + f string  다른 사람들은 f string이랑, 한줄 if문을 써서 간결하게 작성한 걸보고, 한줄 if문법은 무엇인지 찾아봤다.  Result  =  A  if  조건1  else  B  if  조건2  else  C 이는 조건 1이 True이면 Result는 A이고  조건1이 False이고 조건 2가 True이면 Result는 B이고  조건 1, 2 모두 False이면 Result가 C라는 뜻이다.  이 문제에서는 홀수냐, 짝수냐 이기 때문에 이렇게 활용할 수 있다.  num = 'even' if a % 2 == 0 else 'odd' 변수로 넣는것 자체가 시간을 조금 더 걸리게 하는 것이기 때문에, 변수를 만들지 않고  f string의 {} 중괄호안에 넣어서 사용...

이 블로그의 인기 게시물

KT 에이블스쿨 : 6-7차 미니프로젝트 - 제안서 기반 솔류션 기획 및 설계

KT 에이블스쿨 : 핀테크 아이디어 공모전

쿠팡 제품