멋사 ai스쿨 TIL - (2)

eve·2022년 9월 15일
0

likeLion

목록 보기
2/45

--사담영역--


안타깝게도 .. 이제야 코드를 작성하는 옵션을 깨달았다
어젠 하루종일 인용구만 쓰느라 들여쓰기 다 온통 망쳤는데 1일차 TIL 가서 다시 수정해야지 ..


(경택님 마크다운 링크 보내주셔서 감사해요..!)

여담에 여담이지만, 퀴즈가 4개 있었는데 한번에 쓰라는 줄 알고 계속 고민하다 다음날까지 늘어졌다.
알고보니 한 문제씩 채점+피드백 해주는 방식이었다.
엄청 쉬운 거였는데 달달 볶다가 다음날 완료한 도리스러움 .. 후후 오늘도 달려보자 니모가 되자!


그나저나 두희님 목소리 아니라 괜히 아쉽네 ㅎㅎ 1일차만 나오다니~ 배신자~~


--사담끝--


  1. 어제 못다한 퀴즈 이야기_if문을 활용해서 대답해보자
import random
food = random.choice(["된장찌개","피자","제육볶음"])
if(food == "제육볶음"):
	print("곱배기 주세요")
print("종료")코드를 입력하세요

  1. 자료형 변환
int(변수명)

나는 숫자를 적었는데 문자열로 인식하면 곤란하지. 정수라고 이해시켜주자.


1. 중식당 주문


1. [ ]는 리스트를 만들때 쓴다

  • index를 부여받는다는 의미
  • index는 각 데이터값의 순서대로 매겨지는 넘버링을 의미 (0부터 시작)

2. 리스트에 있는 데이터를 출력
이를 위해서는 해당하는 인덱스값을 print 함수 안의 변수명 옆 중괄호 안에 넣어준다.

number = [10.20.30.40.50]
print (number)

이것들을 터미널에서 실행하면 전부 다 나오지만,

number = [10.20.30.40.50]
print (number[2])

를 출력하면 '30'이라는 데이터를 return한다.


3. append의 의미는?

헤헤 중식당 주문은 여기서 시작하겠군 .. 양장피를 추가해보자!

orders = ["짜장","짬뽕","탕수육"]

orders.insert(-1,"양장피")
print(orders)

난 맨 뒤에 넣고 싶었어


4. 메뉴삭제 (1) - del함수
안 먹고싶은 걸 어떡해

orders =["짜장", "짬뽕", "탕수육"]
del orders[0]
print(orders)

결과는 "짬뽕","탕수육" 출력이니라.


5. 메뉴삭제 (2) - remove모듈
아주 따박따박 따지는 모듈이기 때문에 퇴출할 메뉴를 직접 부른다. del은 인덱스로 호출해서 버린다.

orders = ["짬뽕","탕수육"]

orders.remove("짬뽕")

print(orders)

근데 생각해보니까, ... 모듈이 맞는지 잘 모르겠음.. 여튼 할줄 알지 나는~~

2. 학번계산기

1. 렝~ list의 길이를 구하는 함수

orders = ["짜장", "짬뽕", "탕수육"]
len(orders)

3

그냥 len(변수명) 해도 괜찮고, 데이터 전체를 괄호 안에 넣어도 잘 실행된다.

2. 나누기 연산자는 '/'

print(변수명) / print(변수명)

따위도 가능하다 ㅎㅎ


3. if는 값이 True일 때 실행된다. 그 외에는 else!
4. elif는 else랑 합친거라구
5. 무한루프를 벗어나는 법 ctrl+c
6. continue

i = 0
while i < 10 :
	i = i + 1
    
    if i%2 == 0 :
    	continue
    print(i)
print("반복종료!")

2의 배수일 때마다 위로 올라가서 과정을 반복함


7. for - in 문 (시퀀스를 따라가다가 멈춤)

for x in [10, 20, 30] :
print (X)

x에는 index값이 들어가게 된다.


3. 별이 빛나는 밤

1. for 변수 range()

range(시작숫자,종료숫자,스텝)

들여쓰기를 적용하지 않고 for - range 문을 사용하면 range 안에 해당 라인 미포함

for x in range(100)
	print("안녕하세요!")
  print("오랜만이네요!")

위의 결과는 '안녕하세요 x 100 + 오랜만이네요 x 1'이다.
for문 라인에서는 다른 값을 지정하지 않고 range만 지정해줘도 가능.
그리고 종료숫자는 필수이다. 시작숫자와 스텝은 2순위이다.


2. 스텝이 뭔데
스텝은 시작숫자 - 종료숫자가 아니라, 몇 걸음의 스텝으로 반복하냐는 단위이다.


3. x 값이 0으로 고정되어 있으면, 아무리 연산식에서 곱셈해도 말짱 도루묵

4. 옆으로 별 나열하는 법

for x in range(5) :
    print("*", end="")

4. 숫자 입력받아 거기까지 출력

1. i+1이 있었네

x = int(input("숫자를 입력해주세요 : "))

for i in range(x) :
    print(i+1)

근데 나 아직도

5. 문제 해설

1. '별이 빛나는 밤에' 문제해설과 인상적이었던 QnA

for x in range(5) :
	print("*"(x+1))

문제를 못푼 이유: x값과 별을 곱할 수 있었다는 사실을 몰랐다

이외에도,
QnA에서 다른 학생이 (i+1)%10 해서 인덱스값을 구하고, sep" "과 end" "를 이용하여 출력값 개행을 시도한 것이 매우 참신했다. 외에는 /n 으로도 가능하다.


2. 출력값 개행 문제 상세

x = int(input("숫자를 입력하세요 : "))

for i in range(x) :
    if i % 10 == 0 :
        print()
    print(i+1, end="\t")

print()

\t 를 입력하면 '한 탭씩 출력하라'는 의미여서 배열이 깔끔해진다.


3. 로또번호 뽑기 유의사항

  • for 루프 안에 print 함수가 들어가줘야 하는 경우에 유의하자
  • 변수명.sort() 활용 시, 오름차순으로 정렬됨 (오름차순이 디폴트)

6. 퀴즈 해설

(1) replace를 사용하지 않아도, 변수는 그냥 다음과 같이

변수명[key값] = 변경할 value

로 작성해도 value 스왑 가능하다.

(2) 삭제코드도 마찬가지로, key만 적어주면 된다.

del 변수명[삭제할 데이터의 key]

(3) 8까지 출력이면 9를 넣어야지 멍충아

for i in range(9):
	print(i)

흑흑 오늘도 혼공.. 조원들이랑 수다떨면서 얼른 하고 싶다

profile
유저가 왜 그랬을까

0개의 댓글