내용 : 루프와 리스트 (loop and list comprehension
난이도 : 중하, ( for, while을 사용하는 방법은 간단하다)
걸린시간 : 30분
파이썬에서는 for 을 통해서 루프를 만들 수 있다. for를 입력 변수 그리고 in 을 통해서 반복하려는 변수들을 선택할 수 있다.
planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']
for planet in planets:
print(planet, end=' ') # print all on same line
print 의 기본 출력은 \n 한줄띄기가 되는 데 end=' '를 넣어주면 반복되는 값들이 같은줄에 표시된다.
문자에서 대문자 출력하기, isupper를 넣어주면 요소중에서 대문자만 출력된다.
for char in s:
if char.isupper():
print(char, end='')
range()를 통해 반복 숫자를 지정할 수 있다. range(5)하면 0,1,2,3,4 까지의 숫자가 순서대로 반복된다.
for i in range(5):
print("Doing important work. i =", i)
while()루프는 while 라인에 적힌 조건을 실행한 후 반복이 실행된다.
i = 0
while i < 5:
print(i, end=' ')
i += 1
파이썬에서는 리스트안에 수식을 작성할 수 있다. List comprehensions
#list comprehensions
squares = [n**2 for n in range(10)]
squares
% normal list
squares = []
for n in range(10):
squares.append(n**2)
squares
if 조건문도 추가할 수 있다.
squares = [n**2 for n in range(10) if n<5]
squares
string.upper를 사용하면 변수들이 모두 대문자로 변해서 출력한다.
리스트중에서 음수를 세는 여러가지 방법, 다양한 방법으로 만들 수 있다.
파이썬에서 True + True + False = 2이다.
def count_negatives(nums):
"""Return the number of negative numbers in the given list.
>>> count_negatives([5, -1, -2, 0, 3])
2
"""
n_negative = 0
for num in nums:
if num < 0:
n_negative = n_negative + 1
return n_negative
def count_negatives(nums):
return len([num for num in nums if num < 0])
def count_negatives(nums):
# Reminder: in the "booleans and conditionals" exercises, we learned about a quirk of
# Python where it calculates something like True + True + False + True to be equal to 3.
return sum([num < 0 for num in nums])
Which of these solutions is the "best" is entirely subjective. Solving a problem with less code is always nice, but it's worth keeping in mind the following lines from The Zen of Python:
https://www.kaggle.com/colinmorris/loops-and-list-comprehensions
'프로그래밍 > 파이썬' 카테고리의 다른 글
파이썬 kaggle 강의 7/7 (0) | 2021.05.18 |
---|---|
kaggle 파이썬 4/7 (0) | 2021.05.18 |
클래스 self에 대해서 (0) | 2021.05.16 |
Kaggle 파이썬 강의 (6/7) (0) | 2021.05.16 |
Kaggle 파이썬 강의 (2/7) (0) | 2021.05.15 |