0907 TIL

looggi·2022년 9월 7일
2

스파르타 내배캠 AI-3

목록 보기
8/130
post-thumbnail

창정리

  • eof error : 무한루프
  • How to round a decimal to a particular number of decimal places-> using format function
    '{0:.{1}f}'.format(p, n)
    => 0에 p(값),1에 n(소숫점 뒤 자리갯수)이 들어감(old style)
    -> f'{p:.(n}f}'
x = 1.2345
y = 23.45678

print(f'x = {x:.2f} and y = {y:.2f}')
#x = 1.23 and y = 23.46
#x값을 소수점 두번째자리까지, y값을 소수점 2번째자리까지 
  • len('문자열길이')->5/len([리스트])
  • if continue: 반복문 안에서 continue를 실행하면 continue 아래의 코드는 실행하지 않고 다음 반복을 시작합니다.
  • for 나 while에서 아무일도 하지 않는데 형태를 유지하고 싶으면 pass사용.. 할일이 있나?
a = ['geeks','for','geeks']
b = ' '.join(a)
print(b,type(b),len(b))

-> geeks for geeks <class 'str'> 15


파이썬 강의 by 이창호튜터

  • 계산기, 이렇게도 만들 수 있다.. 고오급 문법...
expression={
'+': lambda x,y: x+y,
#x,y값을 인자로 받아서 더한 값을 리턴해준다ㅏ.
'+': lambda x,y: x-y,
'+': lambda x,y: x*y,
'+': lambda x,y: x/y,
}
def calc(num1, operator, num2){
	return expression[operator](int(num1),int(num2))
}
  • eval: 사용자가 입력한 값을 그대로 받음-> 의도하지 않은 동작이 실행될 수 있다.
    print(eval(input()))
    인풋에 대한 검증필요/literal eval사용/사용하지 않는 게 좋음

- 반복문

  • a,b=1,2 이렇게 선언 가능한 것처럼
    리스트도 두개이상의 변수를 한번에 각각 할당 가능하다
    for i, member in enumerate(nemebers):
    i는 실행순서 member은 members의.. 요소
 print(f"{member}의 나이는 {age[i]}살 입니다")
  • for k in products :기본적으로 딕셔너리 반복문을 돌리면 키값이 나와서
    ->for v in products.values(): 밸류값만
    ->for k,v in products.items(): key, value 모두 접근 가능
  • if 조건 continue-> 조건에 해당하면 아무 동작도 하지 않고 다음으로 넘어감(해당 요소 그 다음 줄은 skip)
  • break: 반복문 중지
  • 몇번 반복하는 건지 모를 때는 while을 쓰면 됨
  • " ".join(리스트): 리스트 사이를 어떤 문자를 이용해서 이어줄건-> 이어주면 string
  • string.replace('이거를','이걸로 대체')
  • 딕셔너리나 리스트가 너무 길어서 보기 어려우면 pprint 사용해서 출력
    ➡ 코드짤때도 사용가능! 시각적으로 좋다
  • import random: 난수발생
  • random_number= random.randint(1,20):(20도 포함)
  • random_number= random.randrange(1,20):(20 미포함-> 원래 range함수랑 같은 결)
  • length=int(input("비밀번호 길이를 입력해주세요 : ))
  • 선언한 변수가 아래에서 사용되지 않으면 그 변수는 회색
    ➡ for i in range(length)=> for _ in range(length) 이렇게 쓰면됨.. 헐!!!!!!
  • datetime은 type이 datetime이라서 사용자가 입력받은 날짜를 계산에 이용하려면 str->datetime 변환해야함 datetime.strptime(입력값,"%y.%m.%d) %Y는 4자리 년도
  • 시간 계산시엔 timedelta 사용(년, 월제외)
    기본적으로 형식은 시간까지 포함이라서 시간을 안쓰면 그냥 00:00:00으로 나옴
    ➡ 시간을 없애주려면 다시 datetime-> string으로 변환해야함 datetime.strftime(변환할 입력값, %y-%m-%d)(-,/년월일는 그냥 모양이니까 선택)

- 로또

  • set 에 자료 추가할땐 .add(리스트의 .append)
  • for문을 쓰면 딱 8번만 도는거고 while len(로또)<= 8이면 총 8번(set은 중복이 자동 제외)도는것..갓..것.것.것
    ➡ <=8 이면 8개가 됐는데 한번 더 돌아서 보너스나옴..
    <8이어야함

강의 과제(야구)


알고리즘

  • def solve(a)
    if yellow underline is on a function call then it could be that the function has been deprecated.-> 중요도가 떨어져 더 이상 사용되지 않고 앞으로는 사라지게 될 함수
profile
looooggi

0개의 댓글