<사용된 문법>
replace()
str.replace('변경하고 싶은 문자', '변경 후 문자')
MAP(함수 , 리스트)
받은 리스트의 모든 요소에 대해서 함수를 적용시킨 후 , 함수의 return 값을 이용해 새 리스트 생성.
enumerate()
인덱스와 값을 동시에 접근하면서 루프를 돌리고 싶을 때 사용
print(fruits)
#['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana']
print(list(enumerate(fruits)))
#[(0, 'orange'), (1, 'apple'), (2, 'pear'), (3, 'banana'), (4, 'kiwi'), (5, 'apple'), (6, 'banana')]
enumerate(input_list) -> 0부터 셈
for i , num in enumerate(input_list,1) -> 1부터 셈
isdigit()
문자열이 '숫자'로만 이루어져있는지 확인하는 함수
사용법
1) str.isdigit("판단하고자 하는 문자열")
2) "판단하고자 하는 문자열".isdigit()
자주사용되는 input의 활용
ex)
input()
//
input().split()
//공백을 기준으로 여러 개의 부분 문자열로 분리
a=map(int, input().split())
//사용자가 1 2 3을 입력하면 '1', '2', '3'으로 변환한 결과를 포함하는 map 객체를 반환
Call by value
함수에 인자를 전달할 때 값의 복사본이 생성되어 함수에 전달
원본 데이터에는 영향을 주지 않음
def add_one(n):
n += 1
print("함수 내: ", n)
num = 10
add_one(num)
print("함수 호출 후: ", num)
//함수 내: 11
//함수 호출 후: 10
Call by reference
함수에 인자를 전달할 때 메모리 주소(참조)가 전달
인자의 값을 변경하면, 원본 데이터도 변경
객체의 불변성(immutable) 특성에 따라 실제 동작이 달라질 수 있음
def append_one(lst):
lst.append(1)
print("함수 내: ", lst)
my_list = [0]
append_one(my_list)
print("함수 호출 후: ", my_list)
함수 내: [0, 1]
함수 호출 후: [0, 1]
2차원 배열
for i in range(len(array)): # 행 순회
for j in range(len(array[i])): # 열 순회
print(array[i][j], end=' ')
print() # 행이 바뀔 때마다 새로운 줄로