PYTHON

파이썬(변수복제, input(), 조건제어문)

Positive_Monster 2022. 3. 27. 15:25
더보기

▣ 주요 키워드

  1. 변수복제
  2. input()
  3. 조건 제어문

★ 변수 복제

x = [1,2,3]
x
y = x
y
x[0] = 4
x
y
y[1] = 20
y
x
# x값을 y변수에 복제했을 때 x값이 변경되면 y값도 변경되고 y값이 변경되면 x값도 변경된다. ( 서로 영향을 미친다. )
# id() : 메모리를 확인하는 함수
id(x)
id(y)

x = [1,2,3]
y = x[:]
y
x[1] = 20
x
y
id(x)
id(y)
# 메모리가 다르고 x값이 바뀌어도 y값에는 영향이 없다.(반대또한)

- copy

import copy 
x = [1,2,3]
w = copy.deepcopy(x) # x변수를 복제 하지만 서로 다른 메모리 공간을 사용
w
id(x)
id(w)

★ input()

input()
- 사용자로부터 입력을 받아들여 프로그램에 전달하는 함수
- 문자형으로 전달된다.
x = input()
x
type(x)

y = input()
y
x + y # 문자열 조합

z = int(input())
w = int(input())
z + w


★ 조건제어문 ( if문 )

if문

if 조건문 :
  수행해야할 문장

if 조건문 :
  True일 때 수행해야할 문장
else :
  False일 때 수행해야할 문장
x = 10
if x == 10:
    print('정답')
    
if x ==11:
    print('정답')
else:
    print('땡')

- and, or

x = 15
if x >= 10 and x < 20: # 10보다 크고 20보다 작은 값 true
    print('참')
else:
    print('거짓')
    
if x <= 10 or x >= 20: # 10보다 작거나 또는 20보다 큰 값 true
    print('참')
else:
    print('거짓')

- elif문

num = int(input())
if 90 <= num <= 100:
    print('A')
elif 80 <= num < 90:
    print('B')
elif 70 <= num < 80:
    print('C')
elif 60 <= num < 70:
    print('D')
else:
    print('F')

- 빈 문자열과 None

x = input() # 공백으로 넣고 수행
x == '' # True
x == "" # True
x == None # False
# 공백과 None은 다르다

x = None
x == '' # False
x == None # True

if x is None: # is 일치 여부 확인
	print('참')
else:
	print('거짓')

- isnumeric() : 문자 변수에서 숫자를 체크하는 함수(문자열 안에 숫자만 있어야 함)

- isinstance(변수, 타입) : 변수의 타입을 체크해서 일치하면 True 아니면 False를 리턴하는 함수

x = 1
type(x) # int
x.isnumeric() # False
x = '12345'
x.isnumeric() # True
isinstance(x,int) #False 
isinstance(x,str) # True

- 인덱스의 위치, 값 비교

x = [1,2]
y = [2,1]

x == y # 안에 있는 인덱스의 위치와 값끼리 비교 False
x[0] == y[0] and x[1] == y[1] # False

set(x) == set(y) # True 인덱스의 위치 상관없이 값으로만 비교할 때 (집합 자료형 사용)

- 한 줄 if문(참 값 if 조건 else 거짓)

x = 1000
y = None

if y is None:
    annual = x * 12
else:
    annual = x * 12 + comm
annual

annual = x * 12 if y is None else x * 12 + y # 한 줄 표현