본문 바로가기

분식집/파이썬

(21)
Programmers- to Capital 문제! 알파벳으로 이루어진 문자열 myString에서 모든 알파벳을 대문자로 변환, return 하는 함수를 완성해주세요! 아이디어! 알파벳으로 이루어진 String을 변환 시키는 것이 문제 ASCII코드에서a~z까지의 번호 A~Z까지의 번호를 통해서 아스키 코드 변환을 통핵서 문제를 해결할 수 있지 않을까..? 풀이! def solution(myString): answer =' ' a=0; for i in myString: if 97다 소문자로 전환해주는 함수가 있따..
프로그래머스 옹알이(1) 조건 =>응애는 "aya", "ye", "woo", "ma" 네가지의 옹알이를 사용한 옹알이만 할 수 있음. 문자 배열중 네가지 옹알이가 아닌 다른 옹알이가 들어 있으면 구현이 불가능. 주어진 리스트 중에서 응애가 구현할 수 있는 언어의 수를 구하라. 고안 해 본 구현 방식 리스트를 만들어서 옹알이로 구현가능한 4!개의 옹알이 기입 후 주어진 리스트와 비교, 존재하는 옹알이 수 만 추려냄. 각 옹알이의 시작 언어는 "a","y',"w","m" 네 가지로 중복하지 않음. 따라서 for문과 if문을 이용해 리스트의 시작이 a=>aya를 빼냄, a!=리스트 라면 y로 넘어가서 y=>ye를 뺴냄의 네가지 기작 반복. 남아 있는게 없다면 count+=1 *문자열을 이용한 방식이므로, replace함수를 이용한 옹..
리스트에 값 넣는법 참고 - d = [] #어떤 데이터 목록(list) 을 순서대로 저장하기 위해 아무것도 없는 리스트 변수 만들기 - d.append(값) #d 리스트의 마지막에 원하는 값을 추가(append)해 넣음 - d[a[i]] += 1 #2중 리스트 참조 : 만약 a[i]의 값이 1이었다면? d[1] += 1 이 실행되는 것이다. 1번 카운트 1개 증가..
반복문 조건문 내부의 continue 함수 예시 ... for i in range(1, n+1) : if i%2==0 : continue #다음 반복 단계로 넘어간다. print(i, end=' ') #i가 짝수가 아닐 때만 실행된다. ... 위 코드는 홀 수만 출력하는 예시이다. 참고 조건문이나 반복문의 코드블록 안에서 continue 가 실행되면, 반복 블록 안에 있는 나머지 부분을 실행하지 않고, 다음 반복 단계로 넘어간다. 즉, 반복 블록의 나머지 부분은 실행되지 않고, 다음 단계의 반복을 계속(continue)하는 것이다.
do while 문! do{반복할 문장} while(조건문) 무한 반복에서는 반복후 break만 쳐주면됨 (세미콜론 필요 X)
range()함수 range(n) = 0부터 n-1까지의 출력을 말함. *range(3) 이면 0,1 , 2 겠죠? range (2,4)와 같은 형태로 작성하면 2부터 3까지 출력 range(시작, 끝)과 같은 형태 인 것. range(2,7,2)이라고 적으면 range(시작, 끝, 증감) 형태의 꼴 즉, 2부터 6까지 2씩 늘이면서 수열을 만들라는..!? for i in range(n) : #range(n)에 들어있는(in) 각각의 수에 대해서(for) 순서대로 i에 저장해 가면서... 이때의 for는 각각의 값에 대하여... 라는 for each 의 의미를 가진다고 생각할 수 있다.
while문 설정 방식! while (조건문): (출력1) (출력2) 위와 같은 방식으로 조건문이 거짓이 될 떄까지 행위를 반복한다고 보면 됨. i=int(input()) #i가 0이 아니라면 출력, 0이라면 출력을 중단 시키는 함수 while i!=0: print(i) i=int(input())
파이썬에서 몫을 계산하는법 a//b ->를 하면 몫이 나와용! a%b->를 하면 나머지가 나와요 a/b=>얘는 그냥 나눗셈 실수를 원하는 자리에서 반올림 하는법(C랑 똑같음!) a=float(a)로 플롯 형으로 바꿔준 다음 print(format(a, ".2f")) 를 진행하면 소수 둘쨰짜리까지 반올림을 진행해 줍니다! =>print(round(a,2))=>요렇게쓰면 a의 소수 두번째까지 출력해줌. 시프트 연산 (컴퓨터의 구조는 2진수로 되어 있기 떄문에) (우측 시프트 연산)을 할경우 나누기 2가 된다고 생각하면 됨. print(n
print 함수에서 16진수로 표현 하는법 int형으로 변환이 완료된 변수가 있다고 하고! print("%x"%n) =>(n은 십진수로 받은 변수) 위와 같은 구조로 진행하면 됨. 8진수의 경우엔 "%o"%로 적으면 되겠죠? -------------------- 입력 받을 때 16진수로 변환 하는 방법! a=input() n=int(a, 16) =>int 뒤쪽에 지정하면 16진수로 인식하여 n에 저장 ================================== 문자를 유니코드로 변경하는 방법 참고 n = ord(input()) #입력받은 문자를 10진수 유니코드 값으로 변환한 후, n에 저장한다. ord( ) 는 어떤 문자의 순서 위치(ordinal position) 값을 의미한다. 실제로 각각의 문자들에는 연속된 정수 값이 순서에 따라 부여 ..
print에서 +를 사용할 떄 print(a+b) 의 값에 a, b를 int/ float형식이라고 지정하면 더한값을 출력하고 그렇지 아니하면, 같은 정수 값을 적어도 ab를 출력한다 뭔말알?