4 분 소요

대부분의 프로그래밍 언어들은 특정 부분을 구분하기 위하여 ;이나 { 등의 기호로 시작과 끝을 표현하는 엄격한 구조를 따라야 했지만 파이썬은 이 대신 들여쓰기를 사용합니다

1. console 에 나타내기

print("Hello world")

image

2. 변수

a = 2
b = 3
c = a + b
print(c)

image

  • 변수는 데이터를 담는 메모리 공간
  • 변수에는 숫자, 문자, 목록 등을 담을 수 있음
  • 파이썬은 Top To Bottom 순서로 읽는다
  • 파이썬 변수는 각 메모리(0x0001)를 할당받고 거기에 값이 입력된다
  • 파이썬은 변수 이름에 공백은 허용하지 않는다
  • 파이썬은 변수 단어 사이에 _ 사용 snake_case(스네이크표기법)
  • 파이썬 변수 이름은 항상 글자로 시작(숫자,특수문자로 시작X)

image

3. Booleans and Strings

  • string(문자열): s= “text” / “123”
  • 문자열을 곱하면(“a”x 문자를
  • Booleans(불린): True / False (True와 False의 첫글자는 무조건 대문자!)

대입

A1, b1 = 1,2
	 두개 동시에 대입하고싶을때 
B1,a1 = A1, b1 
	 두개  바꾸고 싶을때
	 왼쪽이 새롭게 정의, 오른쪽이 기존 

4. \

  • 문자열에 \ 문자는 escape 문자인데, 다음과 같다.
  • \: \ 문자
  • \’ : 따옴표
  • \n : 줄 변경
  • \t 탭 \

5. 문자열 인덱싱

** ` A = “Life ais short, you need python”` 이라는 문자열을 보자. **

  • A에서 첫번째 글자는 L이고 두번째 글자는 i이다.
  • 컴퓨터에서 첫번째 자리를 뜻하는 숫자 0을 대입해보면 A[0]을 입력하면 L이라는 결과가 나온다.
  • 뒤에서부터 세고 싶으면 A[-1], A[-2] 등을 입력해보면 된다.

6. 문자열 슬라이싱

` A = “Life is short, you need python” ` 슬라이싱이란, 연속된 문자를 뽑을 때 사용하는 기법이다.

  • A[0:4] 와 같이 입력하면 A라는 문자열에서 0번째 자리부터 4번째 자리 이전까지 문자를 뽑아낸다.
  • 즉, Life가 나온다.
  • A[5:] : 5번째 자리부터 끝까지의 문자열
  • A[:5] : 5번째 자리 전까지의 문자열
  • A[2:-2] : 2번째 자리부터 뒤에서 2번째자리 전까지의 문자열
  • 기본적으로 문자열은 데이터를 변경할 수 없기 때문에 슬라이싱을 많이 이용한다.

7. 주요함수

  • len(문자열) : 길이를 반환 문자열
  • .startswith(문자열2): 문자열이 문자열2로 시작하는지 판단
  • 문자열.endswith(문자열2): 문자열이 문자열2로 끝나는지 판단
  • 문자열.find(문자열2): 문자열 안에 문자열2가 있는지 판단하고 없을 경우 -1을 있을 경우 위치를 반환
  • 문자열.count(문자열2): 문자열 안에 문자열2가 몇번 등장하는지 반환 문자열
  • .strip(): 양 옆에 있는 공백 제거 문자열
  • 기타: rfind, lstrip, rstrip, isalpha, isnumeric, isalnum, replace, split, upper, lower, join*

8. formating

  • 만약, 같은 문자열 안에 여러가지 서로 다른 문자를 넣고 싶다면?
  • 예를 들면,
    “현재 시간은 7시 입니다.”
    “현재 시간은 8시 입니다.”

  • 이럴 때 사용하는 것이 포매팅이다.
  • 포매팅 방법

1)

현재 시간은 {} 입니다.
.format(7) 

2)

현재 시간은 %d시 입니다. % 7 
  • 2번째 방법의 경우엔 % 뒤에 입력할 값의 형태를 지정해줘야 한다.
  • %d : 정수
  • %s : 문자열
  • %f : 실수
  • %o : 8진수
  • %x : 16진수

image

9.형 변환

  • 정수로 변환: int()
  • 실수로 변환: float()
  • 문자열로 변환: str()

10. 순서형

  • 순서형(sequential type)이란 값들이 연속적으로 저장된 형태를 뜻한다.
  • 즉, 문자열도 순서형이다. 그 외에 대표적인 순서형으로 리스트와, 튜플이 있다.
  • 순서형(sequential type)이란 값들이 연속적으로 저장된 형태를 뜻한다.
  • 즉, 문자열도 순서형이다. 그 외에 대표적인 순서형으로 리스트와, 튜플이 있다.
  • 순서형 type의 공통된 연산으로
  • 인덱싱 : A[3]
  • 슬라이싱 : A[3:6]
  • 연결하기: + 연산자
  • 반복하기: * 연산자
  • 멤버 검사: in 연산자
  • 길이 반환: len() 이 있다

11. 리스트

  • 리스트 = [요소1, 요소2, 요소3, …]
  • 예시) A= [1,2,3]
  • A=[‘sd’,’as’,’fg’]
  • A=[1,2,’ff’]
  • A=list()
  • ` A=[]` *리스트도 인덱싱 슬라이싱 가능

다중 리스트

  • 예시) A= [1,2,3,[1,2,3]]
  • A[3][2] = ?
  • 다중 리스트에서도 슬라이싱 인덱싱 가능!

리스트 수정

A = [1,2,3] A[2] = 4 => A = [1,2,4]

리스트 관련 함수들

요소 추가 : 리스트.append( 값 ) 정렬 : 리스트.sort() 뒤집기 : 리스트.reverse() 위치 반환 : 리스트.index( 값 ) 삭제 : del 리스트 [위치 ] 기타: insert, remove, pop, extend

image

12. 숫자열

  • 나눗셈 후 몫을 반환하는 연산자: // 예시) 7//4 = 1

function

  • 함수 정의 = def 함수이름( ) : (js:function / py:def)
  • 함수 호출 = 함수이름( ) ```
def say_hello():
  print("Hello how r u?")

say_hello()

image

indentation

def say_hello():
  print("Hello how r u?")

def say_bye():
  print("bye bye")
  say_hello()

say_bye()
  • say_hello()는 say_bye() 안에있는것으로 인식했고
  • say_bye()는 say_bye()와는 다른 것으로 인식했음
  • 다른 언어들은 항상 중괄호를 써주는데, 파이썬은 공백으로 판단함

13. parameters

  • function에게 data 보내는 방법은 function을 실행할때 ( ) 소괄호 안에다가 원하는 data를 넣으면된다.

  • 근데 실행해보면 작동은 되지 않는다. 그 이유는 우리가 만든 fucntion에 data들어갈 공간이 없기 때문이다.

  • 그래서 그 공간을 주기 위해서는 우리가 만든 function ( ) 소괄호안에다가 text을쓰면된다.
    (문자열이 아닌 그냥 variable을 만들때 처럼 쓰면된다.)

  • 그리고 data를 사용할련 우리가 만든 function ( ) 소괄호 안에있는 text를 function 안에 입력하면된다.

  • 우리가 만든 funciton ( ) 소괄호안에 있는 공간의 이름을 매개변수(parameter)라고 한다.

  • 실행할때 사용되는 function ( ) 소괄호 안에의 이름은 인자(argument)라고 한다.

mutilple parameters

  • paramenter를 여러개 만드는 방법은 function에있는 paramenter에
    콤마를 쓰고 paramenter를 추가하면 된다.

  • 기억해야할 점은 2개의 paramenter가 있으면 function을 call할때
    2개의 argument을 보내야한다. (필요한 data를 전부 보내야하기 때문이다)

  • 주의 해야할 점은 data를 넣는 순서인데 첫번째 argument는 첫번째 parameter에 가고,
    두번째argumnet는 2번째 parameter에 간다

def say_hello(user_name, user_age):
  print("hello", user_name, "how r u?")
  print("you are", user_age, "years old")


say_hello("nico", 12)

image

default parameters

  • parameter에 기본값 설정하기
def say_hello(user_name="anonymous"):
  print("hello", user_name)


say_hello("nico")
say_hello()

image

14. calculator

def plus(a=0, b=0): print(a+b)

def minus(a=0, b=0): print(a-b)

def multiplication(a=0, b=0): print(a*b)

def division(a=0, b=1): print(a/b)

def power_of(a=0): print(a*a)

plus(11,2) minus(5,3) multiplication(3,5) division(15,3) power_of(4)

plus() minus() multiplication() division() power_of()

출처: https://nomadcoders.co/python-for-beginners/lectures/3768

15. return values

def tax_calc(money):
  return money * 2


def pay_tax(tax):
  print("thank you", tax)


to_pay = tax_calc(15)
pay_tax(to_pay)

image

  1. f”“로 문자열을 표현하면 변수를 직관적으로 표현할 수 있다. (변수는 변수명을 중괄호({ })로 나타낸다)

예시)

name = "박기도"
print(f"안녕하세요. {name}입니다")
  1. 함수에서 값을 return 한 뒤 코드는 실행되지 않는다 예시)
def hello():
return "안녕하세요"
print("~~~") # 무시됨
print(hello())

댓글남기기