분류 전체보기
-
TIL. 25 함수의 호출 과정TIL 2020. 11. 2. 21:36
## 함수의 호출 과정 알아보기 def mul(a, b): c = a * b return c def add(a, b): c = a + b print(c) d = mul(a, b) print(d) x = 10 y = 20 add(x, y) 실행 결과 30 200 ## 아래 사진은 mul 과 add라는 함수를 정의한 스크립트이다 ## 해당 이미지는 스크립트를 실행하였을때 (12번) 까지의 결과이며 ##현재 add(13번)은 호출되지 않은 상황이라 가정한다. # 스크립트는 줄 1부터 실행되며 해당 스크립트는 줄 12 까지 실행하면서 전역 프레임(global frame)에 함수 mul, 함수 add, 변수 x , y 가 들어간다 ## 여기서 mul, add는 생성만 되었을 뿐 호출된 상태는 아니다. # 프레임(..
-
TIL. 24 함수 만들고 사용하기TIL 2020. 11. 1. 17:16
## 함수 만들기 # 김왼손의 왼손코딩 강의에서는 이렇게 뒷부분에 등장하지 않았던 것 같으나 많고 많은 중요한 내용 중 하나가 등장했다고 생각하니 # 기본을 기본처럼 익히자. ## hello 함수 만들고 출력하기 ## 함수는 def에 함수 이름을 지정하고 ( )(괄호)와 :(콜론)을 붙인 뒤 다음 줄에 원하는 코드를 작성한다(함수의 이름을 짓는 방법은 변수와 같다). # 이때 코드는 반드시 들여쓰기를 한다. def hello(): print('helloo world') # 빈줄 1줄 사용 print 코드 아래의 빈줄은 print 함수를 실행 후 , 하면서 빈줄이 있음으로써 hello() 함수가 종료되는 것이다. def hello(): print('helloo world') hello() # 빈줄 없이 바..
-
28.4 심사문제 : 파일에서 회문인 단어 출력하기코딩도장 심사문제모음 2020. 11. 1. 16:04
단어가 줄 단위로 저장된 words.txt 파일이 주어집니다. words.txt 파일에서 회문인 단어를 각 줄에 출력하는 프로그램을 만드세요. 단어를 출력할 때는 등장한 순서대로 출력해야 합니다. 그리고 파일에서 읽은 단어는 \n이 붙어있으므로 \n을 제외한 뒤 회문인지 판단해야 하며 단어를 출력할 때도 \n이 출력되면 안 됩니다(단어 사이에 줄바꿈이 두 번 일어나면 안 됨). 사용한 코드 1. with as 문 2. for 문 3. if 문 4. list 5. reversed 6. strip 첫 접근 방법 메모장에 포함되어 있는 text 들에 \n을 유의하여 회문 비교시와 출력시 \n을 제외해야하는점만 인지하면 해결 할 수 있다. 회문을 판별하는 어떤 방법을 사용하든 정답으로 인정되며 풀이1 에서는 l..
-
28.3 연습문제 : 단어 단위 N-gram 만들기코딩도장 심사문제모음 2020. 11. 1. 15:08
표준 입력으로 정수와 문자열이 각 줄에 입력됩니다. 다음 소스 코드를 완성하여 입력된 숫자에 해당하는 단어 단위 N-gram을 튜플로 출력하세요(리스트 표현식 사용). 만약 입력된 문자열의 단어 개수가 입력된 정수 미만이라면 'wrong'을 출력하세요. n = int(input()) # 7 입력 text = input() # 'Python is a programming language that lets you work quickly' 입력 words = text.split() if len(words) < n : print('worng') else: a = list(zip(*[words[i:] for i in range(n)])) for i in a: print(i) :: ('Python', 'is', '..
-
TIL.23 N-gram 만들기TIL 2020. 10. 31. 23:01
## N-gram 만들기 # N-gram은 문자열에서 N개의 연속된 요소를 추출하는 방법입니다. # 만약 'Hello'라는 문자열을 문자(글자) 단위 2-gram으로 추출하면 다음과 같이 됩니다. # he / el / ll / lo ## 반복문으로 N-gram 출력하기 # 2- gram으로 hello 출력하기 text = 'hello' for i in range(len(text)-1): # 0 ~ 3 print(text[i], text[i+1], sep = '') # 2-gram으로 hello 출력하기 :: he el ll lo # 3-gram으로 hello 출력하기 text = 'hello' for i in range(len(text)-2): # 0 ~ 2 print(text[i], text[i+1],..
-
TIL. 22 회문 판별하기TIL 2020. 10. 30. 17:16
## 회문 판별하기 ## 회문 (palinedrome) ## 순서를 거꾸로 읽어도 제대로 읽는 것과 같은 단어 또는 문장을 말한다. ex : 'level', 'sos', 'rotator' 등 ## 회문은 첫번째 문자열과 맨마지막 문자열을 차근차근 비교해가며 서로의 문자열이 같은지 판별해나가며 찾는다. ## 반복문으로 회문 판별하기 word = input('단어 입력 ㄱ:') # level 입력 is_palindrome = True # 회문 판별값을 저장할 변수, 초깃값은 True for i in range(len(word) // 2): # 0부터 문자열 길이의 절반만큼 반복 (// 목) if word[i] != word[-1 - i]: # 왼쪽 문자와 오른쪽 문자를 비교하여 문자가 다르면 is_palin..
-
TIL. 21 파일 사용하기TIL 2020. 10. 29. 22:46
## 파일 사용하기 ## 프로그래밍에서 중요한 축을 차지하는 부분이 파일 처리이다. ## 파일에 문자열 사용하기 ## 파일에 문자열을 쓸 때는 open 함수로 파일을 열어서 파일 객체(file object)를 얻은 뒤에 write 메서드를 사용합니다. # 파일객체 = open(파일이름, 파일모드) # 파일객체.write('문자열') # 파일객체.close() ## IDLE로 아래 코드 입력 file = open('hellow.txt', 'w') # hello.txt 파일을 쓰기 모드(w)로 열기. 파일 객체 반환 file.write('Hellow, cordermun') # 파일에 문자열 저장 file.close() # 파일 객체 닫기 # 위와 같이 입력하며 'hellow.txt' 파일이 저장될 경로와 이..
-
27.6 심사문제: 특정 문자가 들어있는 단어 찾기코딩도장 심사문제모음 2020. 10. 29. 20:04
문자열이 저장된 words.txt 파일이 주어집니다(문자열은 한 줄로 저장되어 있습니다). words.txt 파일에서 문자 c가 포함된 단어를 각 줄에 출력하는 프로그램을 만드세요. 단어를 출력할 때는 등장한 순서대로 출력해야 하며 ,(콤마)와 .(점)은 출력하지 않아야 합니다. 사용한 코드 1. with ~ as 문 2. readline 3. split 4. for 문 5. if 문 6. in 연산자 첫 접근 방법 한줄로 줄바꿈 없이 입력되어 있는 내용을 split을 이용한 공백을 기준으로 리스트를 만들고 반복문으로 해당 요소를 검증하면서 출력하는 방법으로 접근방법은 어렵지 않다. 첫 풀이에서는 IDLE에서 정상 작동하였으나 정답으로 인정해주지 않아 다시 한번 작성하였다. 풀이 1 은 in 연산자를 사..