기본 사항
1. 세미콜론이 필요없다.
2. 변수 타입 지정이 필요없다. 정의에 선언이 포함되어 있다.
3. 주석은 //대신 #
4. 조건문 등에서 {} 괄호가 사용되지 않는다. 대신 들여쓰기를 정확히 해야한다.
입/출력
//출력
print("hello world")
print("hello world", name) //name은 변수
//입력
name = input("what is your name?") //문구 출력과 동시에 입력을 받음
변수
//변수 타입 확인
type(name)
//변수 타입 변환
float(intValue)
str(123)
//None 자료형
x = None //null과 동일하나, 자료형이 None임
//변수 타입 확인 조건문
if x is None:
조건문
//들여쓰기를 정확하게 해야한다.
if x < 10:
print('true')
elseif x == 1:
print('x = 1')
else :
print('false')
//파이썬은 &&, || 대신 and, or을 사용한다
if name=='python' and index==1:
예외문
try:
~
except:
~~
함수
//함수 정의
def function(name, number):
print(name)
print(number)
return "Hi"
//함수 호출
function('pitter', '123')
반복문
while k>0:
print(k)
k=k-1
while True:
k=k-1
if k == 0:
continue
if k < 0:
break
//파이썬의 for문은 다른 언어와 다르다.
//특정 배열의 값을 순서대로 순회한다.
for i in [1,2,3,4,5]:
print(i)
//특정 횟수만큼 반복이 필요할 경우
for i in range(0, 5): //range는 x부터 y-1까지의 정수로 배열을 생성한다. [0,1,2,3,4]
print(i)
문자열
name = 'python'
//문자열은 배열처럼 참조가능하다
print(name[0])
//문자열 길이
len(name)
//문자열 slice
print(name[0:4]) //문자열 x번 ~ y-1번까지만 반환
print(name[1:]) //문자열 x번부터 끝까지 반환
//문자열 연산
name = name + ' ' + 'hi'
//문자열 contain 체크
if name in 'python':
if name not in 'python':
if 'python' in name:
//문자열 find index
name.find('p')
name.index('p', index) //시작index 설정가능, 반환이 없다면 예외발생
//문자열 공백 삭제
name.lstrip() //왼쪽 공백 삭제
name.restrip() //오른쪽 공백 삭제
name.strip() //왼쪽, 오른쪽 공백 삭제
//문자열 split
name.split() //옵션이 없으면 공백으로 분할
//!--파이썬의 문자열은 배열 참조로 변경할 수 없다.
name[1] = 'Y' //에러 발생!
//원한다면 전체를 정의해야한다.
리스트
list = list()
//혹은
list = []
list1 = [1,2,3]
list2 = [4,5,6]
//병합
list = list1 + list2
//length
len(list)
//slice
list[1:2]
list[:2]
list[1:]
...
//항목 추가
list.append(7)
//리스트 정렬
list.sort()
딕셔너리(hash)
map = {}
//혹은
map = dict()
//key, value 정의
map['number'] = 12
//containsKey (키가 존재하는지 확인한다)
//딕셔너리는 key가 없을 때 참조하면 에러가 발생한다
if 'number' in map:
if 'number' not in map:
//key가 존재한다면 value를 반환, 없다면 정의
map.get(number, 0) //없다면 0을 정의
//딕셔너리 to 리스트, value들이 list로 변환
list(map)
//딕셔너리 keys, values, list로 반환
map.keys()
map.values()
//튜플 리스트로 반환
map.items() //[(key, value), (key,value)]
for key, value in map.items():
튜플
//리스트와 동일하나 ()를 사용하고 값의 변경이 불가능하다
//성능, 접근이 빠르다
//임시 변수로 활용한다
//class처럼 사용가능하다
tuple = ('python', 'flutter', 'react')
(x, y) = (300, 200) //좌, 우의 항목 갯수가 일치해야한다.
x, y = 300, 200 //,로 값을 나열하면 ()가 필요없다.
//순차 비교가 가능
//왼쪽부터 쌍으로 비교하여 같으면 다음 index 값을, 다르면 비교해서 반환
//true, false를 반환한다
(0,1,2) < (0,2,3)