Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

행복한 개구리

Python 공부내용 21.08.31 Python - Variables (변수) 본문

Python/공부내용

Python 공부내용 21.08.31 Python - Variables (변수)

HappyFrog 2021. 9. 1. 00:16

W3Schools의 Python Tutorial을 보며 해석하고 정리한 글입니다.

오역이 존재할 수 있습니다

저도 파이썬은 처음이니 가볍게 봐주세요 :D 

W3Schools


x = "awesome"

def myfunc():
	global x
    x = "fantastic"
    
myfunc()

print("Python is " + x)​
x = "awesome"
def myfunc():
	x = "fantastic"
    print("Python is " + x)
    
myfunc()

print("Python is " + x)

지난번에 주석은 #을 이용하여 달 수 있다고 학습했다.

그렇다면 여러줄을 주석처리할 땐 어떻게 해야 할까?

 

여러줄 주석처리

 

"""
This is a comment
written in
more than just one line
"""
print("Hello World!")

▲ 위 코드블럭을 보면 알 수 있듯이 큰따옴표(")를 세번씩 주석 내용의 처음과 끝부분에 입력해준다면 가능하다.


# 파이썬의 변수

* 변수란?

변수는 데이터값을 저장하는 용기이다.

 

* 변수 생성하기

 파이썬은 변수를 선언하는 명령이 없다. 

변수는 우리가 변수에 처음 값을 할당할 때 생성된다.

x = 5
y = "John"
print(x)
print(y)

 

변수들은 특정한 데이터타입을 선언해줄 필요가 없으며 변수를 바꿀때(재할당)에도 역시 데이터타입을 선언해줄 필요가 없다.

x = 4		# x is of type int
x = "Sally" 	# x is now of type string
print(x)

▲ 위 코드블럭에서 알 수 있듯이 파이썬은 변수에 데이터타입을 전혀 선언해주지 않아도 된다.

 

캐스팅(형변환)

만약 당신이 변수의 형변환을 하고 싶다면 다음 코드블럭과 같이 형변환을 실행해주면 된다.

x = str(3)	# x will be "3"
y = int(3)	# y will be 3
z = float(3)	# z will be 3.0

▲ 데이터타입을 선언하고 다음에 나오는 괄호안에 형변환할 변수를 할당해준다.

 

데이터타입 받아오기

 

x = 5
y = "John"
print(type(x))
print(type(y))

▲ 위와 같이 형변환처럼 type()함수를 이용하여 할당된 매개변수의 데이터타입을 불러올 수 있다.

▲ 위와 같이 출력이된다.

 

큰 따옴표? 작은 따옴표?

String형식의 변수들은  ' '   " "  를 사용하여 선언해주어야 한다.

x = "John"
# is the same as
x = 'John'

▲ 큰 따옴표를 사용하던 작은 따옴표를 사용하던 상관없다.

 

대소문자 구분

변수는 대소문자를 구분한다.

a = 4
A = "Sally"
# A will not overwrite a

▲ A는 a를 덮어쓰지 않는다. 따라서 a와 A는 서로 다른 변수이다.


# 파이썬 - 변수의 이름

변수의 이름

변수의 이름은 짧게 하거나

  • ex. x, y 등의 짧은 이름

서술적(묘사적)으로 지정해줄 수 있습니다.

  • ex. age, carname, total_volume 등의 설명이 되는 이름

 

파이썬 변수의 규칙들입니다

  • 변수의 이름은 반드시 글자 또는 밑줄문자  _  로 시작합니다.
    • ex. _name = "name"
  • 변수의 이름은 숫자로 시작할 수 없습니다.
  • 변수의 이름은 오로지 알파벳, 숫자, 밑줄만 포함할 수 있습니다.
  • 변수의 이름들은 대소문자를 구분합니다.
    • => ex. age, Age, AGE 이 세가지 변수는 모두 다른 변수입니다.
myvar = "John"
my_var = "John"
_my_var = "John"
myVar = "John"
MYVAR = "John"
myvar2 = "John"

▲ 변수들을 출력해보면 모두 같은 값이 나오며 제대로 생성되고 할당되었음을 알 수 있다.

 

틀린 예)

2myvar = "John"
my-var = "John"
my var = "John"

▲ 변수의 이름이 규칙을 지키지 않는다면 위와 같이 구문오류가 뜨게된다.

 

여러 단어로 이루어진 변수 이름

변수의 이름이 두 개 이상의 단어들로 이루어진다면 가독성이 떨어질 수 있다.

이러한 가독성 문제를 해결하기 위해서는 몇가지 기술이 있다.

 

Camel Case(카멜 표기법)

제일 처음 글자를 제외한 나머지 단어들이 시작할 때 대문자로 시작한다.

  • 여러 프로그래밍 언어에서 가장 많이 쓰이는 방식이다.
myVariableName = "John"

 

Pascal Case(파스칼 표기법)

각 단어가 모두 대문자로 시작한다. (카멜의 첫글자 예외도 대문자로 쓰는 방식)

MyVariableName = "John"

 

 

Snake Case(뱀 표기법)

모든 단어를 밑줄표기로 분리해준다.

my_variable_name = "John"

# 여러 값 할당하기

여러 변수에 여러 값 할당하기

파이썬은 한 줄의 코드로 여러 변수에 값들을 할당할 수 있다.

x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)

▲ 각각의 변수에 값이 할당되었다.

 

여러 변수에 하나의 값 할당하기

파이썬은 역시 한 줄의 코드로 여러 변수들에게 하나의 값을 할당해줄 수 있다.

x = y = z = "Orange"
print(x)
print(y)
print(z)

▲ 하나의 값이 여러 변수들에게 잘 할당된 모습이다.

 

모음에서 추출하기 (Unpack Collection)

만약 리스트나 튜플같은 값의 모음이 있다면 파이썬은 값들을 변수들에게로 추출할 수 있습니다. 이것을 언패킹(Unpacking)이라고 부릅니다.

# Unpack a list
fruits = ["apple", "banana", "cherry"]
x, y, z = fruits
print(x)
print(y)
print(z)

▲ 이렇게 인덱스에 따라 값을 할당해줄 수 있다.


# 변수 출력하기

변수 출력

파이썬의  print  선언문은 변수들을 출력할 때 자주 쓰입니다.

변수와 텍스트를 결합할 때 파이썬에서는 +를 사용합니다.

x = "awesome"
print("Python is " + x)

▲ 확실히 융통성있는 언어라는게 조금씩 느껴진다. + 형식은 C#에서도 사용할 수 있다.

 

또한 변수끼리 결합할 때도 사용할 수 있습니다.

x = "Python is "
y = "awesome"
z = x + y
print(z)

▲ 마찬가지로 C#에서도 사용가능한 방법이다.

 

숫자들을 출력할 때 +는 숫자들의 수학적 연산자로서 작동합니다.

x = 5
y = 10
print(x + y)

▲ 그러니 숫자를 510 같은 형태로 내고싶다면 str로 형변환해주자.

 

하지만 문자열 형식과 숫자를 결합하려 한다면 파이썬에서는 에러를 출력할 것입니다.

x = 5
y = "John"
print(x + y)

▲ 에러에서도 나오듯이 형식에러이다. int형식과 str형식의 결합은 지원되지 않는다고 되어있다.


# 전역변수 (Global Variables)

전역변수

함수의 바깥에서 생선된 변수들은 전역변수입니다.

전역변수는 모든 객체, 그리고 함수 안과 바깥에서 모두 사용될 수 있습니다.

# 함수 바깥에서 변수를 생성하고 함수안에서 사용하기
x = "awesome"

def myfunc():
	print("Python is " + x)

myfunc()

▲ print코드 작성시에 공백을 잊지말자.

 

만약 같은 이름의 변수를 함수 안에서 생성한다면 그 변수는 지역변수(local Variable)이며 오직 그 함수 안에서만 사용할 수 있습니다. 같은 이름의 전역변수는 그대로 전역(global)이며 그대로의 값을 지닐것입니다.

x = "awesome"
def myfunc():
	x = "fantastic"
    print("Python is " + x)
    
myfunc()

print("Python is " + x)

▲ 출력하는 위치에 따라 쓰는 변수가 달라지기 때문에 출력값도 달라진다.

 

Global Keyword(전역 지시어)

일반적으로는 함수 안에 변수를 생성할 때 그 변수는 지역변수이며 함수 안에서만 쓸 수 있습니다.

 

함수 안에서 전역변수를 만들기 위해서는  global  지시어를 사용해주면 됩니다.

# global 키워드를 사용한다면 그 변수는 전역범위에 귀속됩니다.
def myfunc():
	global x
    x = "fantastic"
    
myfunc()

print("Python is " + x)

▲ 전역변수로 설정되어 함수 바깥에서도 해당 변수를 사용할 수 있게된다.

 

또한 함수 내에서 전역변수의 값을 바꾸고싶다면  global  키워드를 이용하면 됩니다.

x = "awesome"

def myfunc():
	global x
    x = "fantastic"
    
myfunc()

print("Python is " + x)

▲ 함수 내에서 global을 사용하여 전역변수의 값을 바꿔줄 수 있다.

 


# 변수 연습

 

Python - Variable Exercises

Python - Variable Exercises Test Yourself With Exercises Now you have learned a lot about variables, and how to use them in Python. Are you ready for a test? Try to insert the missing part to make the code work as expected: Go to the Exercise section and t

www.w3schools.com

w3schools의 연습 페이지입니다

아주 기초적인 것들이니 쉬울겁니다

연습문제를 풀어봅시다 :D

 

내일은 데이터타입 공부해야지