이건 혁신이야...!!!!!! 파이썬 배우다 간만에 도파민 대폭발😍
list comprehension: 리스트 안에 for문을 포함하여 한 줄로 편하게 코드를 작성할 수 있게 하는 문법.
#[표현식 for 항목 in 반복가능객체 if 조건문]
#1
ls = []
for i in range(1, 5):
ls.append(i)
print(ls)
#1-1
ls = [i for i in range(1,5)]
print(ls)
#2
ls = []
for i in range(1, 5):
if i % 2 == 0:
ls.append(i * 4)
print(ls)
#2-1
ls = [i * 4 for i in range(1,5) if i % 2 == 0]
print(ls)
#for문 중첩
#3
gugudan = []
for i in range(2, 10):
for j in range(1, 10):
gugudan.append(i*j)
print(gugudan)
#3-1
gugudan = [i*j for i in range(2,10) for j in range(1,10)]
print(gugudan)
Dict comprehension: list comprehension과 마찬가지, 딕셔너리도 for문을 간편하게 사용
names = ['Merry','John','Chris']
num = [1,2,3]
#1
dic1 = {}
for i in range(len(names)):
dic1[names[i]] = num[i]
dic1
#1-1
dic = {names[i]:num[i] for i in range(len(names))}
print(dic)
#2
dic1 = {}
for k, v in list(zip(names, num)):
dic1[k] = v*5
dic1
#2-1
dic = {k:v*5 for k, v in zip(names, num)}
print(dic)
#3
dic1 = {}
for k, v in list(zip(names, num)):
if v % 2 == 1:
dic1[k] = v*5
dic1
#3-1
dic = {k:v*5 for k, v in zip(names, num) if v % 2 == 1}
print(dic)
#4. instead of zip, how to use with an actual dict type data
id_name = {1: 'Merry', 2: 'John', 3: 'Chris'}
dic1 = {v:k for k,v in id_name.items()}
dic1 #{'Merry': 1, 'John': 2, 'Chris': 3}
#5 counting
x = ['a','a','b','b','b','c','c','c','c']
dic = {i : x.count(i) for i in set(x)}
dic #{'a': 2, 'c': 4, 'b': 3}
sorted(dic.items(), key=lambda x:x[1], reverse=True) #숫자 큰 순서대로 정렬하기 #[('c', 4), ('b', 3), ('a', 2)]'Python_Wiki > Python_Syntax' 카테고리의 다른 글
| 파이썬 : 짝 홀 구분하기 코드 (0) | 2025.07.17 |
|---|---|
| 파이썬 기본 외장 함수(Standard Library Functions) (1) | 2025.07.11 |
| 변수명 만들때 주의할 것 (1) | 2025.07.10 |
| 랜덤한 숫자를 변수에 넣기 (0) | 2025.07.09 |
| 자료형 비교: list / dict / tuple / set / bool (0) | 2025.07.08 |