Skip to content

STEP 6. 심화 1 #7

@letsjo

Description

@letsjo

단계 설명

지금까지의 프로그래밍 문법으로 더 어려운 문제들을 풀어봅시다.

문제 / 코드보기

새로 알게된 점

  • 문자열/list/dict 에서 특정 문자 포함되어 있는가?
    if {value(dict:key)} in {str/list/dict}

     if 'a' in 'abcdf': # True
     	...
     if 'a' not in ['a','b','c','d','e']: # False (not 이기 때문에)
     	... 
     if 'a' in {'a':0,'b':0,'c':0,'d':0,'e':0} # Ture (key 기준으로 검색)
     	...
  • 문자열에서 특정 문자 index 위치 찾기 (문자가 없을 경우 -1 반환)
    str.find(value)

  • 숫자 소수점 자리수 지정하는 방법1: round() / math.ceil() / math.floor() / math.trunc()

    round(number,자리수)

     num = 12345.6789
     
     print("소수 첫번째 자리에서 반올림 : ", round(num))
     # 소수 첫번째 자리에서 반올림 :  12346
     
     print("1 의 자리에서 반올림 : ", round(num, -1))
     # 1 의 자리에서 반올림 :  12350.0
     
     print("소수 네번째 자리에서 반올림 : ", round(num, 3))
     # 소수 네번째 자리에서 반올림 :  12345.679

    math.ceil(number)

     import math
     
     print(math.ceil(12.34))		# 13
     print(math.ceil(-12.34))	# 12

    math.floor(number)

     import math
     
     print(math.floor(12.34))	# 12
     print(math.floor(-12.34))	# -13

    math.trunc(number)

     import math
     
     print(math.trunc(12.34))	# 12
     print(math.trunc(-12.34))	# -12
  • 숫자 소수점 자리수 지정하는 방법2: f-string

    • 특징
    1. 자리수까지 '0'이 채워진다.
    2. 자리수까지 반올림되서 보여진다.
    3. 문자열로 출력된다.
     num1 = 3.14159265358979
     num2 = 1234.56789
     
     print(f"소수 첫번째 자리까지 표기: {num1:.1f} / {num2:.1f}")
     # 소수 첫번째 자리까지 표기: 3.1 / 1234.6
     
     print(f"소수 네번째 자리까지 표기: {num1:.4f} / {num2:.4f}")
     # 소수 네번째 자리까지 표기: 3.1416 / 1234.5679
  • 숫자 소수점 자리수 지정하는 방법3: "{}".format()
    "{index(생략가능):.표기할 자리수f}".foramt(실수)

     num1 = 3.14159265358979
     num2 = 1234.56789
     
     print("소수 첫번째 자리까지 표기: {:.1f} / {:.1f}".format(num1, num2))
     # 소수 첫번째 자리까지 표기: 3.1 / 1234.6
     	
     print("소수 네번째 자리까지 표기: {1:.4f} / {0:.4f}".format(num1, num2))
     # 소수 네번째 자리까지 표기: 1234.5679 / 3.1416
  • 숫자 소수점 자리수 지정하는 방법4: format()
    format(실수, ".표기할 자리수f")

     num = 3.14159265358979
     
     print("소수 첫번째 자리까지 표기: ", format(num, ".1f"))
     # 소수 첫번째 자리까지 표기:  3.1
     		
     print("소수 네번째 자리까지 표기: ", format(num, ".4f"))
     # 소수 네번째 자리까지 표기:  3.1416
  • List 필터링하는 방법1: filter()
    filter(function, iterable)

    • function 의 반환값은 boolean이여야 한다.
     originalList = [1, 2, 44, 52, 61, 7, 28, 92, 10]
     
     def  isBiggerThanFive(x):
           return x>5
     
     newList = list(filter(isBiggerThanFive, originalList))
     print(newList) # [44, 52, 61, 7, 28, 92, 10]
    
     # 값에 짝수만 추출해서 새로운 리스트 만들기 (lambda 사용하기)
     filteredList = list(filter(lambda x: x%2==0, originalList))
  • List 필터링하는 방법2: List Comprehension
    newList = [x for x in iterable if 조건]

     originalList = [1, 2, 44, 52, 61, 7, 28, 92, 10]
     
     newList = [x for x in origianlList if x>5]
     
     print(newList) # [44, 52, 61, 7, 28, 92, 10]

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions