여태까지 해왔던 조건문에서 일반적인 비교연산자(> < = != 등등) 과 and or not을 제외하고 특이한 조건문을 제공함 + if문에서 들여쓰기는 필수
#인덱싱은 음의 정수도 가능
a= [1,2,3,4,5,6,7,8]
print(a[-1])
#리스트에서 연속적인 위치 한꺼번에 >> 슬라이싱 :
print(a[1:4])
#특정값으로 리스트 한번에 초기화 >> 리스트 컴프리헨션
# 대괄호 안에 조건문과 반복문
array = [i * i for i in range(1,10)]
'''
array = []
for i in range(1,10):
array.append(i*i)
'''
#2차원 리스트 특정값으로 초기화
n=3
m=4
array = [[0]*m for _ in range(n)]
# _ 는 반복을 수행하지만 그 값을 무시하고 싶을때
a.append(3)
a.sort()
a.sort(reverse=True)
a.reverse()
a.insert("a",3)
a.count(3)
a.remove("a")
a.pop()
#리스트 특정값 모두 제거
a=[1,2,3,4,5,5,5]
remove_set = {3,5}
result = [i for i in a if a not in remove_set]
#파이썬에서는 "" 나 '' 모두 문자열임
#\ 를 이용하여 따옴표 안에 따옴표를 포함시킬 수 있음
# 문자열에 대해 인덱싱과 슬라이싱은 가능하지만 값을 바꾸지는 못함 , 문자열 + 은 문자열의 연결 , 문자열 변수를 양의 정수랑 곱하면 그만큼 복사
a= "Hello"
b= "World"
print(a+" "+b)
a="String"
print(a*3)
print(a[2:4])
#---------튜플과 리스트----------------
#튜플() vs 리스트[]
#튜플은 한번 초기화하면 값 변경 불가
#튜플은 리스트에 비해 기능이 제한적이라 공간 효율적
#튜플은 요솟값 변경 불가능해서 내장함수 없
#---------사전과 집합------------------
#사전 자료형
#키와 값 쌍으로 데이터 가지는 / 순서와는 상관이 없음
#키는 변경 불가 , 키값으로 접근가능 (순서 없다보니 인덱싱,슬라이싱 불가능)
data = dict()
data['사과']='Apple'
or
data = {'사과':'Apple'}
#사전 자료형에 원소 있는지 없는지 확인
if '사과' in data:
print("있")
#key값 별도 추출
data.keys()
#value값 별도 추출
data.values()
#value 값 하나씩 출력
for key in data.keys:
print(data[key])
#집합
#중복,순서 X
#특정 데이터가 이미 등장한적이 있는지 확일할때 효과적
data= set([1,1,2,3,4,5,5])
data = {1,1,2,3,4,5}
#C,java에서의 논리연산자 || && ! 혹은 비트연산자와 다르게 파이썬은 집합에서만 | & - 를 지원
#집합 내부함수
data.add(4) #값 1개 추가
data.update([4,5,6]) #여러개 추가
data.remove(2)