반응형
list 깊은 복사 [:]
arr = arr1 을 하면 arr1과 arr 가 똑같이 변경 된다.
arr = arr1[:] 을 하면 arr와 arr1을 다르게 변경할 수 있다.
python 슬라이싱(자르기) [start:end:step]
리스트 중 내가 원하는 범위의 항목만 빼기
list = [1,2,3,4,5,6,7]
# 뒤에서 5번째부터
print(list[-5:])
[3,4,5,6,7]
# 3번째까지
print(list[:3])
[1,2,3]
리스트 역순으로 만들기
list = [1,2,3,4,5]
print(list[::-1])
[5,4,3,2,1]
enumerate 맨날 까먹는거
list = [1,2,3,5,7,9]
for a, b in enumerate(list):
print(a, b)
0 1
1 2
2 3
3 5
4 7
5 9
글자 * 숫자
a = "테스트"
b = 5
result = a*5
print(result)
# 결과값
테스트테스트테스트테스트테스트
배열에서도 되는지 확인해봤는데
# 배열 테스트
print( [[]*n]*n)
[[],[],[],[]]
생성은 되나 이렇게 할 경우 같은 주소를 참조해 하나를 바꾸면 다 바꾼다고 하니
아래 코드처럼 선언해 주어야한다고 한다.
# example1
[[0 for _ in range(n)] for _ in range(n)]
#example2
[[0]*n for _ in range(n)]
영문 대소문자 반대로 변환
# 대소문자 반전
str = "TeSt"
print(str.swapcase())
# 결과값
tEsT
# 대문자 만들기
print(str.upper())
# 결과값
TEST
# 소문자 만들기
print(str.lower())
# 결과값
test
# 첫대문자 나머지 소문자 만들기
print(str.capitalize())
#결과값
Test
# 각 문자열 첫 단어 대문자 나머지
str = "tesT ttsTsT"
print(str.title())
#결과값
Test Ttstst
제곱근 표현 2**2
print(2**2)
4
print(2**3)
8
for문으로 리스트 만들기 [i for i in range(10)]
# 기초
a = [i for i in range(10)]
print(a)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# 조건에 맞는것만 빼서 새로운 리스트 만들기
arr = [-1,-2,0,1,2]
list = [i for i in arr if i > 0]
print(list)
[1,2]
for문으로 {} 오브젝트 만들기 {x: dice.count(x) for x in dice}
{x: dice.count(x) for x in dice}
리스트 일괄 계산하기 sum([1,2,3,4]) prod([1,2,3,4])
num_list = [3, 4, 5, 2, 1]
def solution(num_list):
s=sum(num_list)**2
print(s)
#결과값
225
num_list = [3, 4, 5, 2, 5, 4, 6, 7, 3, 7, 2, 2, 1]
# 더하기
print(sum(num_list))
51
num_list = [2, 3, 4, 5]
# 곱하기
print(prod(num_list))
120
글자를 산식으로 바꾸기 ("1<1" 을 1<1 로)
eval (python 내장함수)
https://docs.python.org/ko/3/library/functions.html#eval
동적으로 문자열 표현식을 평가하여 실행 (Evaluate expressions dynamically)
syntax
eval(expression, globals=None, locals=None)
example
# 기초
x = 1
eval('x+1')
2
# 응용
n = 1 # number
m = 1 # number
ineq = "<" # < or >
eq = "!" # ! or = # !는 =이 없다는 뜻이다.
# 1 "<!" 1
# 1 < 1
print(eval(str(n)+ineq+eq.replace('!', '')+str(m)))
False
zip (리스트 묶기)
name = ['merona', 'gugucon']
price = [500, 1000]
z = zip(name, price)
print(list(z))
[('merona', 500), ('gugucon', 1000)]
동시에 리스트 항목 위치 변경하기 arr[2],arr[3]=arr[2],arr[3]
arr = [1, 2, 3, 4, 5]
arr[2],arr[3]=arr[2],arr[3]
print(arr)
[1, 2, 4, 3, 5]
True False 1 0 으로 바꾸기 int(True)
int(True)
1
int(False)
0
글자 찾기 str1 in str2
str1 = "abbcbc"
str2 = "bbc"
print(str1 in str2)
True
Print(str1.find(str2))
1
range 활용
list(range(10,0,-1))
[10,9,8,7,6,5,4,3,2,1]
클래스의 변수와 속성 이해
https://mobicon.tistory.com/612
반응형
'Python' 카테고리의 다른 글
[Python] Meta classes 메타 클레스 란? (펌 / 링크) (0) | 2024.11.22 |
---|---|
[python] vscode 들여쓰기 (0) | 2024.07.09 |
[Python] SQLAlchemy joinedload (feat. 중복 불러오기 방지) (0) | 2024.01.19 |
[Python] 비동기 특화 orm - Tortoise ORM (0) | 2023.11.23 |
[Python] loguru logger 사용시 유의점 (feat. 디버깅 일기) (0) | 2023.10.04 |