[코테준비]/[코테준비]Python

[코테준비]프로그래머스 코딩 기초 트레이닝 Python DAY1~DAY2 출력

bestFinanceDataAnalyist 2023. 6. 10. 12:30

https://school.programmers.co.kr/learn/challenges/training?order=acceptance_desc&languages=python3 

 

코딩 기초 트레이닝 | 프로그래머스 스쿨

프로그래밍 언어를 처음 접하거나 프로그래밍 언어에 익숙해지고 싶다면? 코딩 역량을 탄탄하게 길러주는 코딩 기초 트레이닝으로 차근차근 코딩에 대한 기초 감각을 길러 보세요.

school.programmers.co.kr

프로그래머스 코딩 기초 트레이닝 연습풀이입니다. 

모든 문제의 저작권은 프로그래머스에게 있으며 문제가 됐을 시 삭제하겠습니다.


DAY1 출력

문자열 출력

문제 설명 : 문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요.

입출력

입력 :

HelloWorld!

출력

HelloWorld!

 

파이썬 문자열 출력 방법 : input >> input은 입력되는 모든 것을 문자열로 취급하

str = input()
print(str)

 

 

a와 b출력하기

문제설명:정수 a b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요.

입출력

입력

4 5

출력

a = 4
b = 5

파이썬 문자열 출력 방법 : input

>> 여러개 문자열 출력시 input(). split() 문자열을 나누어 출력 받을 수 있음

list = input(). split()

a = (list[0])

b = (list[1])

문자가 2개지만 더 많아지면 입력받기 어려움

>> map 함수

여러개의 입력된 경우 각 각의 요소들에 대해 특정한 함수를 적용할 때 쓰면 편함! 기존 라이브러리에서 제공됨.

map(function, iterable) : 첫번째 매개변수로는 함수가 오고 두 번째 매개변수로는 반복 가능한 자료형(리스트, 튜플) 등이 있음

>> 위의 예시로는 map(int, input().split()) 사용 가능

>> 추가 : strip()) → 공백없이 입력 받기

 

최종코드 : a, b = map(int, input().strip().split(' '))

 

 

 

문자열 반복해서 출력하기

문제설명 : 문자열 str과 정수 n이 주어집니다. str n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요

입력

string 5

출력

stringstringstringstringstring

위의 출력 방식을 그대로 이용해서 작성

최종코드

a, b= input().strip().split(' ')
b = int(b)

print(a*b)

 

 

대소문자 바꿔서 출력하기

문제설명 : 영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요

입력

aBcDeFg

출력

AbCdEfG

문자열 관련 함수

대문자를 소문자로 바꾸기(lower)  <> 소문자를 대문자로 바꾸기(upper)

>>> a = "HI"                                                    >>> a = "hi">>> a.lower()                                                  >>> a .upper()'hi'                                                                   'HI'   

 

if문사용 : 조건(대문자, 소문자)을 판단한 후 그에 맞게 처리(대문자 > 소문자, 소문자>대문자)

(if-else 가 기본이고 다양한 조건을 넣고 싶으면 개수에 제한 없이 사용 가능한 elif를 추가하면 된다!

조건이 끝날 때 : 꼭 붙이고! 들여쓰기 주의 필수!!)

<기본>

if 조건문:

    수행할문장

elif 조건문1:     수행할문장else:   수행할문장

 

<표현식>조건문이 참일 때 수행할문장 if 조건문 elxe 조건문이 거짓인 경우

 

for문 사용: 리스트나 튜플, 문자열 첫번째 요소부터 마지막 요소까지(a~G) 차례로 변수에 대입하여 수행할 문장 수행

for 변수 in (리스트, 튜플, 문자열):

     수행할문장

 

최종코드

str = input()    //문자열 받기
convert = ""   
// 빈 문자열 받기

for a in str: 
  //문자열 첫번째 요소부터 마지막 요소까지 변수(a) 에 대입
    if a.isupper(): 
 //a가 대문자이면
        convert +=a.lower() 
 //a 소문자로 바꿔서 convert 에  추가 대입(+=) = 하면 변수가 하나밖에 안나옴
    else:           
     //a가 소문자이면
        convert +=a.upper() 
//a 대문자로 바꿔서 convert 에  추가 대입(+=) 
print(convert)   
//conver 문자열 출력

 

 

 

특수문자 바꿔서 출력하기

문제설명 다음과 같이 출력하도록 코드를 작성해 주세요

!@#$%^&*(\'"<>?:;

문자열 앞에 r을 붙이면 자동으로 특수문자를 \특수문자 로 치환

최종코드

print(r'!@#$%^&*(\'"<>?:;')

 

 


DAY2 출력, 입력

덧셈식 출력

문제설명: 두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요.

입력

4 5

출력

4 + 5 = 9

 

위의 문자열 입력 받는 방식을 이용해서 작성

a, b= map(int, input().strip().split(' '))
c = a+b
print(a ,"+" , b, "=" , c)  // 여러개 받을 때는 print(a, b, c, d) 이런식으로 받기

 

 

문자열 붙여서 출력

문제설명 : 두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다.
입출력 예와 같이 str1 str2을 이어서 출력하는 코드를 작성해 보세요.

 

입력 

apple pen

출력

applepen

최종코드

str1, str2 = input().strip().split(' ')
print(str1+str2)

 

 

 

문자열 돌리기

문제설명 : 문자열 str이 주어집니다.
문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요.

입력

abcde

출력

a
b
c
d
e

최종코드 : 문자열 입력받고 for문으로 돌리면 나온다

str = input()
for a in str:
    print(a)

 

 

홀짝구분하기

문제설명 : 자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을, 홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요.

입력

100

출력

100 is even

 

숫자형함수

나눗셈 후 나머지를 반환하는 % 연산자  ex) 7 % 4 > 3

나눗셈  // 연산자 ex) 7 / 4 > 1.75

나눗셈 후 몫을 반환하는 연산자  ex) 7//4  > 1

>>활용방법: 짝수를 2로 나누면 나머지가 0, 홀수를 2로 나누면 나머지가1

 

최종코드

a = int(input())  //input 받고 int로 형변환
if a%2==0: 
 //짝수일때
    print(a, "is even")
else:       
 //홀수일때
    print(a, "is odd")


 

문자열겹쳐쓰기

문제설명 :

문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

 

입출력

my_string : He11oWor1d

overwirte_string : lloWorl

s: 2

result: HelloWorld

 

인덱싱

a[:2] : a 첫번째부터 2-1 번째까지

a[2:] : a 2번쨰부터 끝까지

 

함수

def(매게변수):

    수행할 목록

    return 함수의 결괏값

 

최종코드

def solution(my_string, overwrite_string, s):
    new_string = my_string[:s] + overwrite_string + my_string[s+len(overwrite_string): ]
    return new_string

 

 

day1~2완료