Python 문법들

2023. 2. 26. 16:52Programming language/Python

array[::]

arr[::], arr[1:2:3], arr[::-1] 등으로 배열의 index에 접근하는 방법을 Extended Slices 라고 부른다.

 

arr[A:B:C], index A 부터 index B 까지 C의 간격인 배열
만약 A가 None 이라면, 처음부터 라는 뜻이고
B가 None 이라면, 할 수 있는 데까지 (C가 양수라면 마지막 index까지, C가 음수라면 첫 index까지가 되겠습니다.)라는 뜻
마지막으로 C가 None 이라면 한 칸 간격으로 라는 뜻이다.

 

>> arr = range(10)
>> arr
[0,1,2,3,4,5,6,7,8,9]
>> arr[::2] # 처음부터 끝까지 두 칸 간격으로
[0,2,4,6,8]
>> arr[1::2] # index 1 부터 끝까지 두 칸 간격으로
[1,3,5,7,9]
>> arr[::-1] # 처음부터 끝까지 -1칸 간격으로 ( == 역순으로)
[9,8,7,6,5,4,3,2,1,0]
>> arr[::-2] # 처음부터 끝까지 -2칸 간격으로 ( == 역순, 두 칸 간격으로)
[9,7,5,3,1]
>> arr[3::-1] # index 3 부터 끝까지 -1칸 간격으로 ( == 역순으로)
[3,2,1,0]
>> arr[1:6:2] # index 1 부터 index 6 까지 두 칸 간격으로
[1,3,5]

 

 

strip() 함수

 strip() 함수는 문자열의 시작과 끝에서 공백을 제거한 후 반환한다. 만약, 괄호 안에 특정 값을 넣을 경우에는 해당하는 문자열을 제거할 수 있다.

# strip()
string = "     abcde     " # 공백 제거
string.strip() #'abcde'
string = "     abcde     " # 특정 문자열 제거
string.strip('c') #'abde'

# rstrip()
string.rstrip() #'     abcde'
string = "     oooabcdeooo     "
string.rstrip('o') #'oooabcde'

# lstrip()
string.lstrip() #'abcde     '
string = "     oooabcdeooo     "
string.lstrip('o') #'abcdeooo'

 

스와프(Swap) 소스코드

스와프란 특정한 리스트가 주어졌을 때 두 변수의 위치를 변경하는 작업을 의미한다.

파이썬에서는 다음처럼 리스트 내 두 원소의 위치를 변경할 수 있지만 다른 대부분의 프로그래밍 언어에서는 명시적으로 임시 저장용 변수를 만들어 두 원소의 값을 변경해야 한다.

# 파이썬 스와프(Swap)
array = [3, 5]
array[0], array[1] = array[1], array[0]

# C언어 스와프
int temp = a;
a = b;
b = temp;

 

더보기

출처 : 이것이 ~ 코딩 테스트다 with 파이썬(p159)

 

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

python (알고리즘 구현을 위한)기초 문법  (0) 2023.09.10
파이썬의 데이터형  (0) 2022.10.21