코딩을 하다보면 더하기 빼기 곱하기는 별 문제가 없는데,

 

나만 그런건지,, 항상 나누기 관련된 연산자들이 헷갈린다.

 

1. 나누기 연산 : /

 

2. 몫 구하기  : //

 

3. 나머지 구하기 : %

 

print(4/2) # 결과 : 2.0
print(2/4) # 결과 : 0.5

print(2//6) # 결과 : 0
print(6//2) # 결과 : 3

print(2%9) # 결과 : 2
print(9%2) # 결과 : 1

막연하게 코딩을 하다보면 시퀀스가 정확히 뭔지도 모르고 시퀀스 시퀀스.. 한다.

 

막연하게 시퀀스? 순서지 뭐 

 

순서같은거야

 

하는데,

 

이번기회에 시퀀스에 대해 정리를 좀 해보려 한다.

 

시퀀스를 정의 하는 것 보다는 실제 사용되는 것들을 예시로 들어 설명하려 한다.

 

[시퀀스의 종류]

 

1. 문자열 "MyLifeIsWonderful"

2. 리스트 ['a','b','c','d','e']

3. range(3,10)

4. 튜플 (1,2,3,4,5)

5. 딕셔너리 {"빨강":1, "주황":2, "노랑":3}

 

위의 5가지가 모두 시퀀스 이다.

 

[시퀀스의 특징]

 

1. 인덱스가 있다. 하나의 요소요소가 인덱스 0 부터 카운트 되는 것

 

2. 슬라이싱이 가능하다 [3:6] : 인덱스3이상 6미만으로 자르기

 

3. in 을 사용할 수 있다,

for문에서 많이 사용하는 in 을 사용할 수 있다.

for i in "MyLifeIsWonderful":

i 가 순서대로 M -> y -> L -> i -> f -> e -> I -> s -> W -> o -> n -> d -> e -> r -> f -> u -> l  이 되는 것이다.

 

4. len(시퀀스이름) 함수를 사용하여 시퀀스의 크기, 길이 를 구할 수 있다.

 

5. 더하기(+) : 이어 붙이기 , 곱하기(*) : 반복 하기  가능하다

 

[리스트를 문자열로 바꾸기 & 문자열을 리스트로 바꾸기]

1. string.split('c') : string (특정 문자열)을 c (특정 글자나 특수문자)를 기준으로 잘라서 리스트로 만들기

string = 'TomandJerry'
string.split('and')

# 결과 : ['Tom', 'Jerry']

 

2. string.join(list) : 리스트(list)의 원소들을 특정 string으로 연결지어서 문자열로 만든다

my_list = ['Tom', 'Jerry']
my_string = '&'.join(my_list)

# 결과 : my_stirng = Tom&Jerry

리스트를 다루다보면, 괄호()안에 인덱스를 넣어야 하는지, 데이터값을 넣어야 하는지 헷갈릴 때가 많다.

 

[데이터값을 넣는 메서드]

 

1. list.append(d) : 맨 뒤에 한 개의 자료만 추가

my_list = [1,2,3]
list.append(7)

# 결과 : my_list = [1,2,3,7]

 

2. list.remove(d) : 리스트 안에 있는 d를 삭제, 중복되는 경우 인덱스가 작은 것(앞에 있는 것) 1개를 삭제

리스트 안에 d가 없는 경우 에러 발생

my_list = [2,3,4,3,3,5]
my_list.remove(3)

# 결과 my_list = [2,4,3,3,5]

 

3. list.count(d) : 리스트 안에 있는 특정 데이터의 개수 세기, d의 개수 세기

my_list = [3,3,4,4,5,3,3]
my_list.count(3)

# 결과 : 4

 

 

[인덱스를 넣는 메서드]

 

1. list[a:b] : 리스트 슬라이싱, 인덱스 a이상, 인덱스 b미만으로 자르기, 리스트 자르기

my_list = ["빨", "주", "노", "초", "파"]
my_list2 = my_list[1:3]

# 결과 : my_list2 = ["주", "노"]

 

2. del list[i] : 인덱스 i 원소 삭제, 리스트에서 인덱스로 삭제하기, 리스트 데이터 삭제하기, 대괄호[]임

my_list = [4,2,56,3,12,6]
del my_list[3]

# 결과 : my_list = [4,2,56,12,6]

 

3. list.pop(i) : 인덱스 i의 원소 제거 후 그 원소를 반환, 리스트 인덱스로 원소 뽑아내기

괄호()안이 공백일 경우, 마지막의 원소를 제거 후 반환

my_list = ["빨", "주", "노", "초", "파", "남", "보"]
a = my_list.pop(3)

# 결과 : a = "초"
# 결과 : my_list = ["빨", "주", "노", "파", "남", "보"]

b = my_list.pop()

# 결과 : b = "보"
# 결과 : my_list = ["빨", "주", "노", "파", "남"]

 

[인덱스와 데이터값 모두 필요한 메서드]

 

1. list.insert(i,d) : 인덱스i 앞에 데이터 d를 넣는다. 리스트 원하는 위치에 데이터 입력하기, 리스트 중간에 데이터 삽입

 my_list = ['a','b','c','d']
 my_list.insert(2,77)
 
 # 결과 : my_list = [a','b',77,'c','d']

 

[인덱스와 데이터값 필요 없는 메서드]

1. list.sort() : 리스트 오름차순 정렬, 리스트 사전순 정렬

2. list.reverse() : 리스트 뒤집기, (내림차순 아님) 원래있던 리스트를 거꾸로 뒤집는 것

3. list.clear() : 리스트 비우기

+ Recent posts