본문 바로가기

Computer Science&Engineering/파이썬

파이썬 기초 실습(2) | 문자열 입출력 | 문자열 포메팅 | 문자열 함수

# input 함수를 통해 이름 나이 생일을 입력하고 아래와 같이 출력 되도록 하시오. 

나의 이름은 XXX 입니다. 
나의 나이는 XXX 이며 XX대입니다. 
나의 생일은 XXXXXXXX입니다. 

코드

name = input("이름 입력 >>")
age = int(input("나이 입력 >>"))
birth = input("생일 입력 (ex, 19991010)>> ")

print("나의 이름은 %s 입니다."%name)
print("나의 나이는 %d 이며 %d대 입니다."%(age, age//10*10))
print("나의 생일은 %s 입니다."%birth)

실행결과

이름 입력 >>EDDO
나이 입력 >>19
생일 입력 (ex, 19991010)>> 19191010
나의 이름은 EDDO 입니다.
나의 나이는 19 이며 10대 입니다.
나의 생일은 19191010 입니다.

# week=['월','화','수','목','금','토','일']와 for를 이용해서 아래에 있는 내용이 출력 되도록 코딩하시오.

솔로몬 그런디는 
월요일에 태어나서 
화요일에 세례받고 
수요일에 결혼하고 
목요일에 병들어서 
금요일에 악화되어 
토요일에 눈을 감아 
일요일에 묻혔다네 
솔로몬 그런디는 
그렇게 살다 갔네 

코드

week=['월','화','수','목','금','토','일']
for day in week:
    if day=='월':
         print("%s요일에 태어나서"%day)
    elif day == '화':
        print("%s요일에 세례받고"%day)
    elif day == '수':
        print("%s요일에 결혼하고"%day)
    elif day == '목':
        print("%s요일에 병들어서"%day)
    elif day == '금':
        print("%s요일에 악화되어"%day)
    elif day == '토':
        print("%s요일에 눈을 감아"%day)
    else:
        print("%s요일에 묻혔다네"%day)
print("솔로몬 그런디는")
print("그렇게 살다 갔네")

실행결과

월요일에 태어나서
화요일에 세례받고
수요일에 세례받고
목요일에 세례받고
금요일에 세례받고
토요일에 세례받고
일요일에 세례받고
솔로몬 그런디는
그렇게 살다 갔네

 

# 번호(50번까지 찍히도록),Victory 출력을 50번 반복하시오.

코드

i=1
while i<51:
    print("{}: Victory".format(i))
    i+=1

실행결과

1: Victory
2: Victory
3: Victory
4: Victory
5: Victory
6: Victory
7: Victory
8: Victory
9: Victory
10: Victory
11: Victory
12: Victory
13: Victory
14: Victory
15: Victory
16: Victory
17: Victory
18: Victory
19: Victory
20: Victory
21: Victory
22: Victory
23: Victory
24: Victory
25: Victory
26: Victory
27: Victory
28: Victory
29: Victory
30: Victory
31: Victory
32: Victory
33: Victory
34: Victory
35: Victory
36: Victory
37: Victory
38: Victory
39: Victory
40: Victory
41: Victory
42: Victory
43: Victory
44: Victory
45: Victory
46: Victory
47: Victory
48: Victory
49: Victory
50: Victory

 

# 정수 3개를 입력하면 평균을 구하는 함수를 만들어 보시오. ex) average(1,2,3) => 2가 나오도록 

코드

def average(a, b, c):
    return (a+b+c)/3

num1 = int(input("첫번째 정수 입력 >>"))
num2 = int(input("두번째 정수 입력 >>"))
num3 = int(input("세번째 정수 입력 >>"))

print("{} {} {}의 평균은 {} 입니다.".format(num1, num2, num3, average(num1, num2, num3)))

실행결과

첫번째 정수 입력 >>10
두번째 정수 입력 >>20
세번째 정수 입력 >>30
10 20 30의 평균은 20.0 입니다.

# 다음 두 수를 사칙연산 해보세요.  num1 = 40, num2 = 30

코드

num1 = 40
num2 = 30

# 더하기
print(num1+num2)

# 빼기
print(num1-num2)

# 곱하기
print(num1*num2)

# 나누기
print(num1/num2)

# 나누기 후에 값 출력
print(num1//num2)

# 나누기 후에 나머지 출력
print(num1%num2)

# 자승  
print(num1**num2)

# num1과 num2의 곱하기 한 값을 2진수, 8진수, 16진수로 각각 변환 해볼 것
mul= num1*num2
print(bin(mul))
print(oct(mul))
print(hex(mul))

실행결과

70
10
1200
1.3333333333333333
1
10
1152921504606846976000000000000000000000000000000
0b10010110000
0o2260
0x4b0

# 문자열 실습

조건

string1 = "My life" 
string2 =  " is mine."  

# string3 에 string1과 string2가 합쳐진 결과를 넣을 것 

>>> string3 = string1 + string2
>>> string3
'My life is mine.'

 

# string3 에서 My life를 추출해 볼 것 

>>> string3[:7]
'My life'


# string3 에서 mine 을 추출해서 string4에 넣을 것 

>>> string4 = string3[-5:-1]
>>> string4
'mine'

# "Your life is yours"을 아래와 같이 출력할 것 

Your life is 
yours

>>> print("Your life is \nyours")
Your life is 
yours


# 문자열 포매팅 실습

# 아래 문장을 문자 포맷팅을 통해서 작성하시오. (문자열 포맷팅 대상, 오늘, 영어, 98, 0.1 ) 

나는 오늘 영어 시험을 보았다. 
나의 점수는 98점으로 상위 0.1% 점수이다.

print("나는 {} {} 시험을 보았다.".format('오늘', '영어'))
print("나의 점수는 {}으로 상위 {}% 점수이다.".format(98, 0.1))

# day = 'today' 라는 문자열을 통해서 다음 문자열 포맷팅을  하시오.

총 9칸 오른쪽 붙임
>>> day ='today'
>>> print("%9s"%day)
    today

총 14칸 왼쪽 붙임
>>> print("%-14s"%day)
today         

 

# float1 = 1.2345678 라는 실수를 통해서 다음 문자열 포맷팅을 하시오.

총 8칸 소수점 5자리 오른쪽 붙임
>>> print("%8.5f"%float1)
 1.23457

총 10칸 소수점 4자리 왼쪽 붙임
>>> print("%-10.4f"%float1)
1.2346   


# 문자열 함수 실습

alph = "abcd efg hijk lmnop qrs tuv wxyz" 
number = "1234 567 89" 
boy = "BOYS, BE AMBITIOUS" 

# alph 문자열을 대문자로 변환 후에 alph1에 넣으시오.

>>> alph1 = alph.upper()
>>> alph1
'ABCD EFG HIJK LMNOP QRS TUV WXYZ'

# boy 와 alph1를 더한 값을 string1에 넣으시오.

>>> string1 = boy + alph1
>>> string1
'BOYS, BE AMBITIOUSABCD EFG HIJK LMNOP QRS TUV WXYZ'

 

# string1 에서 B가 몇개 있는지 확인해보시오.

>>> string1.count('B')
4

# string1 에서 첫번째 A가 어느 위치에 있는지 확인해보시오.

>>> string1.index('A')
9

# boy 문자열에서 BOYS를 girls로 변환 후에 string2에 넣으시오.

>>> string2 = boy.replace("BOYS", "girls")
>>> string2
'girls, BE AMBITIOUS'

# string2에서 대문자는 소문자로, 소문자는 대문자로 변환시키시오.

>>> string2.swapcase()
'GIRLS, be ambitious'

# alph 문자열로 alphlist = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']을 만들어보시오.

>>> alphlist = " ".join(alph).split()
>>> alphlist
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 
's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
반응형