본문 바로가기

코딩

(Day3) 22년1월6일 파이썬 공부의 자잘한 정리들

  • 자주 헷갈렸던 부분은 노랑색 하이라이트 처리.
  • 일단 이해하지 못한 부분은 연한 빨강색 하이라이트 처리, 이후 복습
  • 조금 더 중요할것으로 생각되는 부분은 주황생 하이라이트 처리.

 

  • 기본적으로 다른 타입끼리 합하여 print할 수 없다. 예를들면

입력:
age = 36
txt = "My name is John, I am " + age
print(txt)

출력:
이경우 str+int라서 에러가 난다.

  • 다른 타입간의 합체를 해결하기 위해 format 명령어가 존대한다.

    입력:
    age = 36
    txt = "My name is John, and I am {}"
    print(txt.format(age)) 
    >>해석: 프린트할거야, txt. 에 들어가는 내용에 int가 있는데, int가 들어갈 부분은 {}으로 표기했어, txt의 {} 부분에는 age의 값을 넣어줘.

 

  • print 내용이 변수일 경우에는 따옴표 표기가 필요없다. 예를 들어

    입력:
    quantity = 3
    print(quantity)

    출력:
    3

  • (llo) 를 출력하기 위해서는 2:5 로 입력해야한다.
    실제로 o는0,1,2,3,4로 4번에 해당하지만, 파이썬에서는 마지막 자리 -1까지로 값을 출력한다. 예를들어

    txt = "Hello World"
    x = txt[2:5]

Python Comparison Operators

Booleans

  • 대부분의 값은 True이지만, 0과 empty 된 상태에서는 False가 나온다 예를 들면

    입력:
    bool(False)
    bool(None)
    bool(0)
    bool("")
    bool(())
    bool([])
    bool({})

    출력:
    모두 False 값이 나온다

  • isinstance() 함수에 대한 설명:

    입력:
    x = 200
    print(isinstance(x, int))
    해석: 출력할거야, 무엇을? isintacne라는 함수의 결과물을. (x변수가, int정수인지) 확인해줘.

 

 Arithmetic Operators

  • 제곱값 구하는 방법

    입력:

    x = 2
    y = 5

    print(x ** y) #same as 2*2*2*2*2

 

  • // 으로 round 기능 사용하기
    x = 15
    y = 2

    print(x // y)

    출력:
    7 # // 를 사용하면 round해서 아랫근접값으로 출력해준다.

 

비트연산자: 

비트연산자라는 개념 자체가 아직 생소한 것 같다.

 

  • not 의 사용법

입력:
x = 5
print(not(x > 3 and x < 10))

출력:
 False

해석:
출력해줘, 무엇을? (x > 3 and x < 10)가 참/거짓인지. (x > 3 and x < 10)는 참이야! 근데 참의 반대를 출력해줘! 왜냐하면 not 이라고 했으니까. 오케이 그럼 True의 반대값인 False 를 출력할게.

  • 파이썬에서는 변수의 값이 순서가 있는지? 원조변수값이 바뀔 수 있는지? 두가지가 매우 중요한 개념 중 하나이다. 꼭 기억하도록 하자.
  • 리스트의 datatype은 class 다.
  • 리스트를 생성하는 두가지 방법
    첫번째: mylist = ["apple", "banana", "cherry"]
    두번째: thislist = list(("apple", "banana", "cherry"))
  • 배열타입에 대한 깔끔한 요약. 언제 사용될 수 있을까? 일단 list와 tuple만 외우자. 그 다음은 자연스럽게 외워질 것 같다.
  • 직관적으로 빠르게 array의 items 순서 이해하는 방법 예를 들어
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[2:5])
    이 경우 우리가 0부터 세었을 때, 2번 cherry와 3번"orange" 4번"kiwi"가 출력된다. 

    array의 시작 item부터 꺼내오는 경우
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[:4])
    이 경우 0:4-1, 즉 첫번째, 두번째, 세번째 값이 출력된다.
  • 매우 헷갈리는 음수로 array item 꺼내오기.
    -1까지 호출하면, 마지막 값은 출력되지 않는다. 마지막값까지 호출하고싶을 때는 [-4:]으로 입력해야한다.

  • 근데 또 이게 인간을 정말 헷갈리게 하는 것은, [-1]로 입력하면, mango 가 출력된다ㅋㅋ
  • ※매우중요※
    입력:
    thislist = ["apple", "banana", "cherry"]
    thislist[1:2] = ["blackcurrant", "watermelon"]
    print(thislist)

    출력:
    ['apple', 'blackcurrant', 'watermelon', 'cherry']

    해석:

    값이 한개가 더 늘어난 것을 알 수 있다. 이는 [1:2]의 의미가 1과 1(2-1) 사이에 ["blackcurrant", "watermelon"] 두개 값을 넣어줘 라는 뜻으로, 1과 1 사이는 1칸밖에 없는데 2개의 값을 요청하였기 때문에, 전체 array의 개수가 기존 3개에서 4개로 늘어난 것이다.
  • thislist = ["apple", "banana", "cherry"]
    thislist[1:3] = ["watermelon"]
    print(thislist)

    해석:
    이런식으로  1번과 2번에 한개값만 넣어달라고 하는 경우, 1번과2번이 기존 두 개 값에서 한 개 값으로 통합된다.