[TIL. 13] python(조건문, 함수, list , 반복문)

신지원·2021년 3월 5일
0

Python

목록 보기
2/14
post-thumbnail

1. 조건문

# 조건문 기본형

if is_raining:
	print("bring an umbrella")

# if, else
if age >= 20:
	print("성인입니다")
else:
	print("미성년자입니다.")
    
# else if
if (age >= 8) and (age <= 13):
	print("초등학생입니다.")
elif (age >= 14) and (age <= 17):
	print ("중학생입니다.")
else:
	print("고등학생이거나 성인입니다.")

파이썬에선 인덴트 그 자체가 문법이다!!!
스페이스바 두번 or 탭 한번

2. 함수

def function_name():
	print("Hello World!")
    
function_name() # call function

#keyword Argument (파라미터 값을 미리 정해줌.)
def call_student(name,teaher="jelly"):
	print(name + "is here with " + teacher)

call_student("Jee") 

# mutiple return 
def get_boundaries(target,margin):
    low_limit = target - margin
    high_limit = margin + target
    return low_limit,high_limit

low,high= get_boundaries(100,20)

3. f-string

# f'문자열 {변수명} 문자열' 

a = "black tea"
b = 10

result = f'저는 {a} 를 좋아합니다. 하루에 {b}잔도 마실 수 있어요!'


# {} 안에 변수에서 수식을 사용하는 것도 가능한다.
x = 3
y = 9
result = f'x * y = {x*y}'

f-string 은 파이썬 3.6부터 사용할 수 있다.
완전 편하다..! 짱짱

4. List

리스트는 자료형에 구애 받지 않고 다양하게 사용 할 수 있다.


# list 안에 list 를 또 넣을 수 있다.
heights = [['Jenny', 61], ['Alexus', 70], ['Sam', 67], ['Grace', 64]]

# Zip (각각의 리스트를 하나로 합쳐 주는것)
names = ['Jenny', 'Alexus', 'Sam', 'Grace']
heights = [61, 70, 67, 65]
names_and_heights = zip(names, heights)
print(names_and_heights)
<zip object at 0x7f1631e86b48> # 결과 값이 이렇게 뜬다. 메모리 안에 객체의 위치를 리턴 시키기 때문에...
print(list(names_and_heights)) # 리스트 보려면 이렇게..

# 빈 리스트 (나중에 요소를 추가하거나 삭제 할 수 있도록 빈 리스트를 만들기도 한다)
empty_list = []

4-1. list의 method

  • .append()
    list에 하나의 요소 추가하기, list에 이미 요소가 있을 경우 맨뒤에 추가 된다.
a = [1,2]
a.append(3) 
print(a) # a = [1,2,3]

# + 이용해서 2개이상 요소 추가하기
orders = ['daisy', 'buttercup', 'snapdragon', 'gardenia', 'lily']
new_orders = orders + ['lilac','iris']

+ 이용해서 요소 추가할땐, 반드시 [] 기호 필요하다.

  • .range()
list1 = range(3) # [0,1,2]
list2 = range(1,5) # [1, 2, 3, 4] 

# range(start,end,skip)
list3 = range(2,9,2) #[2,4,6,8]

# list 함수
print(list(list1))
  • .index(value)
    값이 몇번째 인덱스에 있는지 확인
snack = ['포카칩','꼬깔콘','홈런볼']
# 꼬깔콘이 몇번째에 있는지 확인하기
print(snack.index('꼬깔콘'))  # 1

# 몇번 인덱스에 무슨 값이 있는지 확인
print(snack[0]) # '포카칩' 
  • .insert(index_int, value)
    list 사이에 요소 추가하기
snack = ['포카칩','꼬깔콘','홈런볼']
snack.insert(1,'꼬북칩')
print(snack) # ['포카칩', '꼬북칩', '꼬깔콘', '홈런볼']
  • .pop()
    뒤에서부터 하나씩 꺼냄.
snack = ['포카칩', '꼬북칩', '꼬깔콘', '홈런볼']
print(snack.pop())  # 홈런볼
print(snack)  # ['포카칩', '꼬북칩', '꼬깔콘']
  • .count(value)
    value가 몇개 있는지 확인 가능함.
snack = ['포카칩', '꼬북칩', '꼬깔콘', '홈런볼','홈런볼']
print(snack.count('홈런볼'))  # 2
  • .clear()
    list 안에 있는거 모두 지우기

  • .extend()
    리스트 확장

num_list = [1,2,3,4,5]
mix_list = ['꼬북칩', 10 , False]
num_list.extend(mix_list)

print(num_list) # [1, 2, 3, 4, 5, '꼬북칩', 10, False]
  • len(리스트)
    리스트의 길이를 알아내는 법.
list1 = range(2, 20, 3) 
list1_len = len(list1)
print(list1_len) # 9

print(list(list1)) # [2, 4, 6, 8, 10, 12, 14, 16, 18]
  • 슬라이싱
    list[start:end]
    start: 첫 요소 (포함됨)
    end: 끝 요소 (포함안됨)
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

sublist = letters[1:6]
print(sublist)  # ['b', 'c', 'd', 'e', 'f']

# 맨처음부터 시작할땐 0 생략이 가능하다.
print(letters[:3])  # ['a','b','c']

# 끝까지 셀때도 맨 끝 숫자 생략이 가능.
print(letters[5:])  # ['f', 'g']

5. 반복문

# for
# for <temporary variable> in <list variable>:
    <action> 
# temporary variable는 미리 선언할 필요 없다.
 
dog_breeds = ['french_bulldog', 'dalmation', 'shihtzu', 'poodle', 'collie']
for breed in dog_breeds:
    print(breed)  
'''
french_bulldog
dalmation
shihtzu
poodle
collie
'''


# break

items_on_sale = ["blue_shirt", "striped_socks", "knit_dress", "red_headband", "dinosaur_onesie"]
 
print("Checking the sale list!")
for item in items_on_sale:
  print(item)
  if item == "knit_dress":
    break
    
 
# continue (조건이 참일 때, continue 아래 부분의 코드를 실행하지 않고 처음 부분으로 돌아가서 반복문을 계속해준다.)
big_number_list = [1, 2, -1, 4, -5, 5, 2, -9]
 
for i in big_number_list:
  if i < 0:  
    continue
  print(i)

'''
1
2
4
5
2
'''

# while
dog_breeds = ['bulldog', 'dalmation', 'shihtzu', 'poodle', 'collie']
 
index = 0
while index < len(dog_breeds):
  print(dog_breeds[index])
  index += 1

# List Comprehensions
# new_list = [elem for elem in old_list if elem != 0]

heights = [161, 164, 156, 144, 158, 170, 163, 163, 157]

can_ride_coaster = [height for height in heights if height> 161] 
print(can_ride_coaster) # [164, 170, 163, 163]

# element들을 이용해서 그 안에서 계산도 할 수 있다.
odd_number = [1,3,5,7,9]
change_even = [odd + 1 for odd in odd_number]

print(change_even) # [2, 4, 6, 8, 10]

에휴.. 벌써 금요일이다.
이번주에 노트북 수리 맡기느라 이상하게 일주일이 더 빨리 가버린 느낌...ㅠ 공부도 진짜 많이 못했다..ㅠ

0개의 댓글