풀잎스쿨 | Day 2. 불, 문자열, 리스트와 튜플

yeonk·2021년 9월 8일
0

python

목록 보기
10/22
post-thumbnail

20210908🐾



1. 불(Boolean) & 비교 연산자

Boolean: True, False

==: equal
!=: not equal
부등호: <, >, <=, >= 사용
is, is not: 객체 비교
id(): 메모리 주소를 구할 수 있음



cf. 값 비교에는 is를 쓰지 않는다.

is 로 값을 비교하지 않는 이유에 대해서 조원들과 토론을 해보았다.
많은 의견들이 나왔는데 우리가 내린 결론은 이것이다.
is는 메모리 주소로 비교한다. 변수에 값을 할당하면 메모리 주소가 할당되는 것인데 이 때 메모리 주소는 값의 범위에 따라서 같을 수 있다.
따라서 is를 통해서는 값 비교가 어려운 것이라고 결론을 도출해보았다!






논리 연산자

and: 두 값이 모두 True여야 True.
or: 두 값 중 하나라도 True면 True.
not: 논리 값을 뒤집음

cf. 논리 연산자는 not, and, or 순으로 판단






정수, 실수, 문자열 불로 변환하기

정수: 1(True), 0(Fulse)
실수: 0.0(False) 이 외 모두 True
문자열: True ("", ''와 같은 빈 문자열 제외)






단락평가

첫 번째 값만으로 결과가 확실할 때 두 번째 값은 확인하지 않는 방법

  • and

    • 첫 번째 값 False: False
    • 첫 번째 값 True: 두 번째 값 반환
  • or

    • 첫 번째 값 False: 두 번째 값 반환
    • 첫 번째 값 True: True






2. 문자열

"", ''을 사용하여 작성
""", '''을 사용하여 여러줄 문자열 작성






3. list & tuple

list

[]로 생성하며 ,로 구분함
리스트 내부에는 요소(element)가 저장됨
문자열, 정수, 실수, 불 모두 저장 가능

# 빈 리스트 만들기
a = []

# 리스트 만들기
b = ["Joy", 23, 156.5, True]

# 문자열과 리스트
list('hi')
# ['l', 'i', 's', 't'] 출력






range()

연속된 숫자를 생성하며, 지정한 횟수 숫자는 생성되는 숫자에 포함되지 않음

  # range 작성 방법
  rnage(횟수)
  range(시작,)
  range(시작,, 증감폭)
  
  # range를 이용한 리스트 작성
  c = list(range(0, 10+1, 2))
  
  # c = [0, 2, 4, 6, 8, 10]으로 출력
  






tuple

()사용 ,로 구분
괄호로 묶지 않아도 튜플 생성 가능(콤마만 사용)
실수, 정수, 문자열 모두 사용 가능
저장된 요소 변경, 추가, 삭제 불가

  # 요소가 한 개인 튜플 생성
  a = (1,)
  
  # range를 사용한 튜플
  b = tuple(range(5))
  
  # 문자열과 튜플
  tuple('hello')
  #('h', 'e', 'l', 'l', 'o') 출력
  






list, tuple 변환

# list를 tuple로 변환하기
c = [3, 4, 5]
tuple(c)

# tuple을 list로 변환하기
d = (1, 2, 3)
list(d)






리스트, 튜플의 언패킹과 패킹

# 튜플 언패킹
a = (1, 2, 3)
q, w, e = a
print(q, w, e)
# 1, 2, 3 출력


# 리스트 언패킹(split 활용)
x = input().split()		# 1, 2 입력
y, z = x

print(y, z)			# 1, 2 출력


# 튜플 패킹
t = (4, 5, 6)
g = 7, 8






reference

남재윤, 『파이썬 코딩 도장』, 길벗

0개의 댓글