파이썬 조건문과 문자열

기존 유투브 영상은 설명없이 키보드로 코드를 작성하는 모습만 보여드려서 보기가 불편하여, 정답 코드로 대체합니다.
본 컨텐츠는 저작권법의 보호를 받으며, 무단 복제, 가공, 외부 오픈이 확인될 경우, 법적 책임을 물을 수 있습니다,

Exercise 12. 기본 자료형

  • 10, 2.2, "fun-coding" 각각을 변수에 넣고, 각 데이터 타입을 출력하세요.
In [7]:
digit1 = 10
digit2 = 2.2
string1 = "fun-coding"
In [9]:
print (type(digit1))
print (type(digit2))
print (type(string1))
<class 'int'>
<class 'float'>
<class 'str'>

Exercise 13. 기본 자료형

  • 다음 코드를 실행해보고 \t와 \n의 역할을 설명하세요.
    code = '000660\n00000102\t12312312'
    print (code)
    
In [10]:
code = '000660\n00000102\t12312312'
print (code)
000660
00000102	12312312
In [11]:
print ('000660\t00000102\t12312312')
000660	00000102	12312312
In [13]:
print ('Hello\nHello\nHello\nHello\nHello\nHello\n')
Hello
Hello
Hello
Hello
Hello
Hello

Exercise 14. 조건문

  • 사용자로부터 두 개의 숫자를 입력 받은 후 큰 숫자를 화면에 출력하세요.
In [1]:
digit1 = input()
digit2 = input()

print (digit1, digit2)
1
2
1 2
In [3]:
digit1 = input()
digit2 = input()

if digit1 > digit2:
    print (digit1)
else:
    print (digit2)
100
99
99
In [5]:
digit1 = input()
digit2 = input()

if int(digit1) > int(digit2):
    print (digit1)
else:
    print (digit2)
100
99
100

Exercise 15. 조건문

  • 사용자로부터 입력 받은 숫자가 홀수인지 짝수인지 출력하세요.
In [6]:
digit1 = input()

print (type(digit1))
1
<class 'str'>
In [8]:
digit1 = input()
digit1 = int(digit1)
1
<class 'int'>
In [13]:
digit1 = input()
digit1 = int(digit1)

if digit1 % 2 == 0:
    print ("짝수")
else:
    print ("홀수")
2
짝수
In [ ]:
 

Exercise 16. 조건문

  • 사용자로부터 세 개의 숫자를 입력 받은 후 가장 작은 숫자를 출력하세요.
In [16]:
digit1 = 8
digit2 = 5
digit3 = 3

if digit1 < digit2:
    min = digit1
else:
    min = digit2

if min < digit3:
    print (min)
else:
    print (digit3)
3
In [19]:
digit1 = int(input())
digit2 = int(input())
digit3 = int(input())

if digit1 < digit2:
    min = digit1
else:
    min = digit2

if min < digit3:
    print (min)
else:
    print (digit3)
100
99
101
99
In [ ]:
 

Exercise 17. 조건문

  • 사용자로부터 점수를 입력 받은 후 등급을 출력하라.
    • (A: 100 ~ 81, B: 80 ~ 61, C: 60 ~ 0)
In [23]:
digit = 9

if digit <= 100 and digit >= 81:
    print ("A")
elif digit <= 80 and digit >= 61:
    print ("B")
elif digit <= 60 and digit >= 0:
    print ("C")
C
In [26]:
digit = int(input())

if digit <= 100 and digit >= 81:
    print ("A")
elif digit <= 80 and digit >= 61:
    print ("B")
elif digit <= 60 and digit >= 0:
    print ("C")
65
B

Exercise 18. 데이터 구조 (리스트)

  • 사용자로부터 주민등록번호를 입력받아 출생 연도를 출력하세요.
    • 예) 800001-1231231 주민번호를 입력받으면 80을 출력하면 됨
In [27]:
personal_id = "800001-1231231"

print (personal_id[0:2])
80
In [29]:
personal_id = input()

print (personal_id[0:2])
991002-2012232
99

Exercise 19. 데이터 구조 (리스트)

  • 사용자로부터 주민등록번호를 입력받아 뒷자리 맨 앞의 숫자를 출력하세요.
    • 주민등록번호 뒷자리 맨 앞자리는 성별을 나타냄
    • 예) 800001-1231231 주민번호를 입력받으면 1을 출력하면 됨
    • 1은 남성을 의미, 2는 여성을 의미, 최근 아이들은 3과 4를 사용함
In [30]:
personal_id = "800001-1231231"

print (personal_id[7])
1
In [31]:
personal_id = input()

print (personal_id[7])
991002-2012232
2

Exercise 20. 데이터 구조 (리스트)

  • 사용자로부터 주민등록번호를 입력받아, 성별을 '남성' 또는 '여성'으로 출력하세요.
    • 주민등록번호 뒷자리 맨 앞자리는 성별을 나타냄
    • 예) 800001-1231231 주민번호를 입력받으면 1을 출력하면 됨
    • 1이면 남성, 2이면 여성을 출력하면 됨 (최근 아이들은 3과 4를 사용하지만 이 경우는 고려하지 않기로 함)
In [35]:
personal_id = "800001-1231231"

print (personal_id[7])
1
In [37]:
personal_id = "991002-2012232"

if personal_id[7] == "1":
    print ("남성")
elif personal_id[7] == "2":
    print ("여성")
여성
In [41]:
personal_id = input()

if personal_id[7] == "1":
    print ("남성")
elif personal_id[7] == "2":
    print ("여성")
else:
    print ("wrong personal ID")
991002-6012232
wrong personal ID

Exercise 21. 문자열 다루기 (strip)

  • 다음 문자열에서 ...를 제거하라.
    mystr = "a man goes into the room..."
    
    출력 예: 'a man goes into the room'
In [42]:
mystr = "a man goes into the room..."

print (mystr)
a man goes into the room...
In [48]:
mystr = "a man.goes into the room..."

print (mystr.strip("."))
a man.goes into the room

Exercise 22. 문자열 다루기 (strip)

  • 주식 종목을 나타내는 종목코드에 공백과 줄바꿈 기호가 포함되어 있다. 공백과 잘바꿈 기호를 제거하고 종목코드만을 추출하라.
    code = '         000660\n            '
    
    출력: '000660'
In [51]:
code = '         000660\n            '

print (code.strip(' \n'))
000660

Exercise 23. 문자열 다루기 (count)

  • 다음 문자열에서 'Python' 문자열의 빈도수를 출력하라.
    python_desc = "Python is an interpreted high-level programming language for general-purpose programming. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace."
    
    출력 예: 2
In [55]:
python_desc = "Python is an interpreted high-level programming language for general-purpose programming. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace."

counts_Python = python_desc.count("Python")

print (counts_Python)
2

Exercise 24. 문자열 다루기 (count)

  • 다음 문자열에서 'p' 문자가 몇번 나오는지 빈도수를 출력하라.
    python_desc = "Python is an interpreted high-level programming language for general-purpose programming. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace."
    
    출력 예: 9
In [57]:
python_desc = "Python is an interpreted high-level programming language for general-purpose programming. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace."

print (python_desc.count("p"))
9

Exercise 25. 문자열 다루기 (문자열 인덱싱)

letters 라는 변수에 들어 있는 문자열에서 두 번째와 네 번째 문자를 출력하라

letters = "python"

출력 예:
y
h

In [63]:
letters = "python"

# print (letters)
print (letters[1])
print (letters[3])
y
h

Exercise 26. 문자열 다루기 (문자열 인덱싱)

  • letters 라는 변수에 사용자로부터 문자열을 입력받아서 문자 n 이 들어있는지를 출력하라 ( n 이 들어 있으면 0, 안들어있으면 -1을 출력하라)
In [69]:
letters = input()

if letters.find("n") >= 0:
    print ("0")
else:
    print ("-1")
123123123123123123dfasdfan
0

Exercise 27. 문자열 다루기 (문자열 인덱싱)

  • letters 라는 변수에 사용자로부터 문자열을 입력받아서 문자 n 이 들어있는지를 출력하라
    • n 이 들어 있으면 'n 이 들어있습니다.', 안들어있으면 'n 이 안들어있습니다.' 를 출력하라
In [71]:
letters = input()

if letters.find("n") >= 0:
    print ("n 이 들어있습니다.")
else:
    print ("n 이 안들어있습니다.")
212123123123
n 이 안들어있습니다.

Exercise 28. 문자열 다루기 (문자열 인덱싱)와 조건문

  • 주민등록번호의 뒷 자리 7자리 중 두번째부터 세번째는 출생 지역 코드입니다.
  • 다음 표를 참조하여 사용자로부터 주민 등록 번호를 입력 받은 후 출생지를 출력하세요.
    지역 코드 출생 지역
    00 ~ 08 서울
    09 ~ 12 부산
In [81]:
string1 = "991002-1012232"

print (string1[8:10])
01
In [86]:
string1 = "10"
# print (string1, type(string1))

string1 = int(string1)
# print (string1, type(string1))

if string1 >= 0 and string1 <= 8:
    print ("서울")
elif string1 >= 9 and string1 <= 12:
    print ("부산")
부산
In [87]:
string1 = input()
string1 = int(string1[8:10])

if string1 >= 0 and string1 <= 8:
    print ("서울")
elif string1 >= 9 and string1 <= 12:
    print ("부산")
991002-1012232
서울

Exercise 29. 문자열 다루기 (split)

  • letters 라는 변수에 Dave,David,Andy 가 들어있다. 해당 변수값을 , 를 기준으로 분리해서 출력하라
    • 출력 예: ['Dave', 'David', 'Andy']
In [93]:
letters = "Dave,David,Andy,2222,3123123,LLL"

letter_list = letters.split(",")

print (letter_list)
for letter in letter_list:
    print (letter)
['Dave', 'David', 'Andy', '2222', '3123123', 'LLL']
Dave
David
Andy
2222
3123123
LLL

Exercise 30. 문자열 다루기 (split)

  • 다음과 같은 파일 이름(확장자 포함)에서 확장자를 제거한 파일 이름만 출력하세요.
filename = 'exercise01.docx'
In [100]:
filename = 'exercise01.docx'

print (filename.split(".")[0])
exercise01
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]: