본문 바로가기

Computer Science&Engineering/파이썬

자료형, 문자열 함수 실습

# 17을 2진수 8진수 16진수로 표기 하시오.

>>> bin(17)
'0b10001'
>>> oct(17)
'0o21'
>>> hex(17)
'0x11'

#14를 10으로 나눈 후 나머지 값이 몇인지 구하시오.

>>> 14%10
4

# 4의 20승 값을 구해보시오.

>>> 4**20
1099511627776

# 132 / 35 일 경우 몫은 얼마인가?

>>> 132//35
3


a=abcedf 문자열     # a= 'abcdef'
b=12345 문자열      # b='12345' 

# a문자열과 b문자열을 더한 문장을 가지고 c 문자열을 만드시오.

>>> c = a + b
>>> c
'abcdef12345'

# b문자열을 3번 반복하시오.

>>> b*3
'123451234512345'

# c문자열에서 3번째 문자를 인덱싱 해보시오.

>>> c[2]
'c'

# 3번째,5번째,8번째 문자를 인덱싱 해보시오.

>>> c[2], c[4], c[7]
('c', 'e', '2')

# 4,7,8 번째 문자들을 추출해서 한 문자열로 만들어보시오.

>>> c[3] + c[6:8]
'd12'

# 뒤에서 4번째 문자를 인덱싱 해보시오.

>>> c[-4]
'2'

# 3번째 문자부터 끝까지 슬라이싱해보시오.

>>> c[2:]
'cdef12345'

# 4번째부터 8번째 문자까지 슬라이싱해보시오.

>>> c[3:8]
'def12'

# 뒤에서 3번째부터 6번째까지 슬라이싱해보시오.

>>> c[-6:-2]
'f123'

# 전체 문자열을 슬라이싱 해보시오.

>>> c[:]
'abcdef12345'


문자열 포맷팅 실습(% 를 이용한 문자열 포맷팅)
# "나는 아침마다 1잔의 우유를 마시고 네이버뉴스를 봅니다." 에서 1과 네이버뉴스를 포맷팅을 이용해서 작성해보시오.

>>> print("나는 아침마다 %d잔의 우유를 마시고 %s를 봅니다."%(1,"네이버뉴스"))
나는 아침마다 1잔의 우유를 마시고 네이버뉴스를 봅니다.

# 'hello'문자열을 총 14칸으로 설정하고 왼쪽 붙임으로 포맷팅을 이용해서 작성해보시오.

>>> print("%14s"%"hello")
         hello
>>> print("%-14s"%"hello")  //왼쪽 붙임해서 14칸 설정이 티가 안남..
hello

# 'bye' 문자열을 총 10칸으로 설정하고 오른쪽 붙임으로 포맷팅을 이용해서 작성해보시오.

>>> print("%10s"%"bye")
       bye

# 2.5679856 라는 소수를 소수점 5자리까지만 출력되도록 포맷팅을 이용해서 작성해보시오.

>>> print("%.3f"%2.567856)
2.568

# 총 15칸으로 설정하고 소수점 3자리리까지만 출력되도록 포맷팅을 이용해서 작성해보시오.

>>> print("%15.3f"%2.567856)
          2.568


문자열 함수 실습

string1 = "My life is mine."

# string1의 소문자를 모두 대문자로 변환한 값을 string2로 만드시오.

>>> string2 = string1.upper()

>>> string2
'MY LIFE IS MINE.'

# string2의 대문자를 모두 소문자로 변환한 값을 string3로 만드시오.

>>> string3 = string2.lower()

>>> string3
'my life is mine.'

# string1의 소문자는 대문자로, 대문자는 소문자로 변환한 값을 string4로 만드시오.

>>> string4 = string1.swapcase()
>>> string4
'mY LIFE IS MINE.'

# string2에서 m의 갯수는?

>>> string2.count('m')

0

# string3에서 M 이 처음으로 나오는 자리는?

>>> string3.index('M')

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>> string3.find('M')
-1

 

string3에서 M을 찾아봤지만, -1로 없는 것으로 확인됨. string3를 출력하여 직접 확인해봐도 M이 포함되어있지 않음

>>> string3
'my life is mine.'

# 12345 사이에 ; 으로 구분자를 만드시오.

>>> b
'12345'

>>> ';'.join(b)
'1;2;3;4;5'

# string1에서 My를 Your로 변환시켜서 string4에 넣으시오.

>>> string4= string1.replace("My", "Your")
>>> string4
'Your life is mine.'

# "192.168.100.40" 을 리스트 형태로 만들어보시오.

>>> '192.168.100.40'.split('.')
['192', '168', '100', '40']

# "abcdef"를 리스트 형태['a','b','c','d','e','f']로 만들어보시오

>>> ','.join("abcdef").split(",")
['a', 'b', 'c', 'd', 'e', 'f']

 

>>> list("abcdef")
['a', 'b', 'c', 'd', 'e', 'f']

반응형