반응형
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))
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"])
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 |