Programming/Python

Python 2강 - list, tuple, dictionary, if, function 특징, import

상맹 2021. 9. 13. 00:28
반응형

1. list, 요소 제거, 끝에 추가, 원하는 위치에 추가 , 정렬, 반복문

  ① list (벡터, 메트릭스)

lis = [1, 2, '3', 4]  # 타입 상관없이 넣을수 있다
list1 = [1, 2, 3, 4]

print(list1[0])
print(list1[-1])
print(list1[3])

list2 = [5, 6, 7, 8]

# 벡터 : 일차원 데이터 ([1, 2, 3, 4, 5, 6, 7, 8])
list3 = list1 + list2

print(list3)

# 메트릭스 : 이차원 데이터 (행,열이 있다.)
list4 = [list1 + list2]
list5 = [[list1] + [list2]]
list6 = [list1] + [list2]

print(list4)
print(list5)
print(list6)

list2.append(9)  # 추가
list2 = list2 + [9]  # 추가

print(list2)

결과 값

  ② 요소제거, 끝에 추가, 원하는 위치에 추가, 정렬, 반복문

# 요소 제거
print("="*50)
arr = [5, 6, 7, 8]
arr.remove(8)
print(arr)  # [5,6,7]

del arr[0]  # 위치를 잡아서 제거, 0 번지 위치 제거
print(arr)  # [6,7]

# 끝에 추가
print("="*50)
arr2 = [5, 6, 7, 8]

arr2.append(9)
print(arr2)

# 원하는 위치에 추가
print("="*50)
arr3 = [5, 6, 7, 8]
arr3.insert(2, 500) # 2번자리에 500을 넣는다.
print(arr3)

# 정렬
print("="*50)
arr4 = [8, 5, 1, 3]
arr4.sort() # 오름차순
print(arr4) 
arr.reverse() # 내림차순
print(arr4)

# 반복문
print("="*50)
arr5 = [1, 3, 5, 7]

for i in arr5: #forEach 문 : collection 담긴 수만큼
    print(i)

print("="*50)

for i in range(0,6): # (start, end) : end 전까지 !!!(중요)
    print(i)

요소제거 결과값
끝에 추가 결과값
원하는 위치에 추가 결과값
정렬 결과값
반복문 결과값

2. tuple

 tuple : 변경 불가능한 데이터, 한번 정해지면 변경 불가능한 데이터를 사용하는 이유는 정해진 데이터에서 데이터를 변화 시켯을 경우 변동된 사항을 알 수 있다. 따라서 이전 데이터는 무조건적으로 불변이어야한다.(변경 감지에 중요)

tuple1 = (1, 2, 3, 4)

print(tuple1)
print(tuple1[0])

print(type(tuple1))

tuple 결과값

3. dictionary

# 딕셔너리 (사전)

# {"key": value}  => 딕셔너리
# { key: value}    => JavaScript Object
# {"key" : value} => JSON

dic1 = {"username": "ssar", "password": "1234", "age": 19}

print(dic1)
print(type(dic1))

print(dic1["password"])

print("="*50)

users = [
    {"username": "ssar", "password": "1234", "age": 19},
    {"username": "cos", "password": "1234", "age": 30}
]

print(users[1]["age"])

for user in users:
    print(user["username"])

dictionary 결과값

4. con - if, else, elseif(elif), or, and, pass, 조건부 표현식

isChecked = False

if isChecked:
    print("안녕")
else:
    print("굿바이")


num = 10
if num > 10:
    print("만점")
elif num > 5:
    print("평균")
else:
    print("미만")

# or, and
if True or False:
    print("트루입니다")

# 스택에 아무것도 안적고 싶으면 pass를 사용
if True:
    pass

# 조건부 표현식
score = 80
message = "success" if score > 60 else "fail"
print(message)

결과값

5. function

 ① 함수에 오버로딩이 존재하지 않는다.

 ② 선택적 매개변수 사용가능 (디폴트로 초기화 가능)

 ③ 전역변수를 함수 내부에서 사용하려면 global을 선언을 해주면 된다.

def add(n1, n2):
    return n1+n2


print(add(2, 4))


def minus(n1, n2=5):  # 선택적 매개변수
    return n1-n2


print(minus(10))  # default 값이 n2 = 5
print(minus(10, 9))  # 함수의 오버로딩이 안된다.

sum = 20  # 1급 객체 : 최상위에 존재가능한 객체(제일 바깥에 쓸 수 있는 객체) cf) Java에서의 1급 객체 : class

def vartest():
    global sum  # globla sum을 선언한 경우
    sum = sum + 1  # 바깥에 있는 sum을 내부에서 사용가능


vartest()

print(sum)

결과값

6. 변수, 클래스, 함수 import 하기

  - 모듈 : 변수, 함수, 클래스 모아둔 파일 

  - 패키지 : 여러 모듈을 하나의 디렉토리로 모아둔 것

 

  - import 하는 방법

  ① from 뒤에는 파일명이나 폴더명

  ② import 뒤에는 파일명이나 변수, 클래스, 함수

  * hello.py

def sayHello():
    print("hello everyone~~~~~~")


num = 10

  * test01.py

import hello as h
from hello import sayHello, num
# from hello import *

h.sayHello()

sayHello()

print(num)

print(h.num)

list = [1, 2, 3]

print(len(list))

결과값

 

  * test02.py

import sys
import http #http 폴더

# 이미 import 된 모듈
print(sys.modules)

# 기본 내장 라이브러리
print(sys.path)

결과값

  - 라이브러리 사용을 하기 위해서는 import해야한다.

반응형

'Programming > Python' 카테고리의 다른 글

Python 6강 - Crawling  (0) 2021.09.20
Python 5강 - Web에서 구동  (0) 2021.09.13
Python 4강 - 통신  (0) 2021.09.13
Python 3강 - Class, 생성자, Exception  (0) 2021.09.13
Python 1강 - 설치 및 다운로드  (0) 2021.09.12