관리 메뉴

bright jazz music

파이썬 프로그래밍 220312 본문

Language/python

파이썬 프로그래밍 220312

bright jazz music 2022. 3. 12. 11:32
# 변수는 사용하기 전에 먼저 선언이 필요하다
# 변수 선언은 변수에 값을 할당함으로써 이뤄진다.
# e.g. 변수이름 = 초기값



#9라는 리터럴 값 자체가 변수에 담겨 있는 것이 아니다.
# 9라는 리터럴의 ID 가 존재하고, 그 아이디 값을 참조하는 것이다.
#즉, 숫자에 대한, 또는 문자에 대한 ID 값만을 가지고 있는 것이다.
#그것이 쉽게 변수의 값을 바꿀 수 있는 이유이다.

#9라는 객체의 id:123456 이 num_of_people에 저장되는 것이다.
#비단 숫자뿐만 아니라 그 어떤 데이터도 마찬가지이다

# id(변수) = id 값 반환
# type(변수) = 리터럴 값의 타입 반환



id(123)
2016327438384

numOfPeople = 1
print(type(numOfPeople))
print(id(numOfPeople))

print(id(1))

print(id(2))

numOfPeople = 123
print(id(numOfPeople))


    
def show_message(msg, name):
    print(msg, name, '님')



print(show_message('안녕', '차호준'))


#매개변수는 인수를 받는 변수이다. 매개변수는 다양한 값을 사용해 보기위해서 사용한다.

#키워드 인수
# 키워드 인수의 장점은 인수의 순서를 지키지 않아도 된다는 것이다.


    
def show_message(msg='안녕하세요', name='여러분'):
    print(msg, name, '님')


show_message('안녕@','차호준')

show_message()

show_message('안녕@')
show_message(name='차호준')
show_message(msg='안녕@')





#기본값을 갖는 매개변수 뒤쪽(오른쪽)에는 모두 기본값을 지정해야 함
#두개의 매개변수 중에 하나에만 기본값을 지정한다고 하면 뒷쪽에 위치하는
#매개변수에 값을 지정해 줘야 한다. 전달받는 값도, 기본값도 없기 때문에 오류난다.


print('life', 'is', 'too', 'short')

print('life', 'is', 'too', 'short', sep='.')

print('안녕', '여러분', sep='....', end='\n\n\n')

print('안녕', '여러분')
print('안녕', '여러분', sep=',')
print('안녕', '여러분', sep=' ', end='!   ')
print('hel\nlo')





#반환값을 갖는 함수
# 호출된 함수는 반드시 호출측으로 복귀해야 함.
#   return 반환값   을 써주면 됨.
# 복귀를 강제할 수 있는 문장이고, 단독으로 사용하거나, 필요 시 하나의 반환값을 지정할 수 있음.

#반환값이 호출측에 전달되면 반드시 이용하라. 사용하지 않을 거면 반환하지 말 것.







# input()
#프로그램이 실행되는 동안 사용자로부터 키보드를 통해
# 하나의 '문자열'을 입력받아 반환
# 한 번에 하나의 문자열만 입력 가능
# 엔터키를 누르기 전 까지는 입력값 수정 가증



print('당신의 이름은?', end='     ')
name= input()
print('반가워요', name)



#프롬프트 메시지
#대부분의 입력문에서 사용자에게 무엇을 입력해야 할지 알리기 위해 표시되는 문자열
#입력 처리 전에 프롬프트 메시지 출력이 선행됨
#방법 print()문으로 별도로 출력
#input() 문의 인수로 !!!!하나의 문자열!!!! 지정
#반환값도 @@하나의 문자열@@ 반환



name= input('당신의 이름은?')
print('반가워요', name)






#함수의 네 유형

#유형1: 매개변수와 반환값을 갖지 않는 함수
# - 호출 시마다 똑같은 일만 수행하는 한계 존재
# - 간단해 보이나 책임 분할이 안 된 구성
# 모든 걸 미뤄버리고 함수 썼다~~~




#유형2: 매개변수만 갖는 함수
#호출 측에서 매개변수를 넘김.
# 호출된 함수에서 메시지를 출력까지 해버린다면
# 호출측에서는 함수에서 작업한 결과를 이용할 수 없음.(반환값이 없으므로)




#유형3: 반환값만 갖는 함수
#반환값만 갖는 함수
# - 호출측에서 그 결과를 다양하게 이용 가능(인풋도 호출된 함수에서 받는다면)



#유형4 매개변수와 반환값을 모두 갖는 함수
# - 호출 시 다양한 데이터를 매개변수로 전달 받음
# - 수행을 마치고 그 결과를 호출측으로 반환 (재사용성이 높은 일반화된 함수로 구성)







#사용자 정의 함수부

def make_message(name):
    msg = '반가워요' + name
    return msg

#주 프로그램부

print('시작')
input_name = input('당신의 이름은?')
result = make_message(input_name)
print(result)
print('마침')
Comments