<TIL-17> 활용했던 python 문법 정리

김건우·2020년 7월 22일
0

파이썬 문법

목록 보기
1/5
post-custom-banner

1. 나눗셈 후 int type 반환 '//'

문제:
divide(); 함수를 돌리면 66나누기 10이 실행되고, 6이 리턴 될 수 있도록 하기

#solution
def divide():
	result = 66 // 10
    	return result
  • 66 // 10 을 하게 되면 나머지를 제외한 몫이 리턴된다.
  • 파이썬은 66/10을 하게 되면 자동으로 float형을 리턴해주는데, //을 사용시 int형을 반환해준다.

2. if 조건문 and 조건문 // if 조건문 or 조건문

문제)
방정식: ax=b
1. Input으로 주어진 a와 b 값으로 위의 방정식을 충족하는 단 하나의 정수를 출력
2. 만일 a 와 b 값으로 위의 방정식을 충족하는 정수가 없다면 "No Solution" 출력
3. a와 b 값으로 위의 방정식을 충족하는 정수가 많다면 "Many Solutions" 출력
(ex) a=1, b= -2 라면 결과값은 -2 // a=2, b=1라면 결과값 "No Solution"

a = input()
b = input()
if a == 0 and b==0:
	print("Many Solutions") # a와 b가 0이면 x에 어떤 숫자가 들어가도 된다.
elif a == 0:
	print("No Solution")
elif b == 0:
	print("0")
elif b%a == 0:
	print(int(b/a)) #input으로 받는 것은 "type string" 이기 때문에 int로 형변환 해준다.
else:
	print("No Solution")
  • if 조건문 and 조건문:
    -. 두개의 조건을 모두 만족시켜야 실행 되는 문법
  • if 조건문 or 조건문:
    -. 두개 조건문 중 하나만 만족해도, 실행 되는 문법

3. 함수의 parameter(매개변수) 지정 순서와 가변인수, 가변키워드인수

예시 코드)

  • parameter(매개변수) 지정 순서

    def example(non-default, default, 가변인수, 키워드인수)

  • 가변인수, 키워드가변인수: 인수가 유동적으로 생길 것 같을 때 임의 개수의 파라미터를 받을 수 있도록 함
    (*args),(**kargs)
#가변인수 설정
def func_args(*args)

(출력은 튜플 타입)

  • 키워드 가변 인수: **kwargs
#키워드 가변 인수
def func_kwargs(**kwargs)

{출력은 "딕셔너리" 타입}

4. 브라켓 노테이션(bracket notation)_대괄호 표기법

  • 다차원 리스트의 접근할 때 브라켓 노테이션을 활용할 수 있다.
#다차원 리스트: 리스트 안에 리스트
any_list = [
	[1,2,3],
    [4,5,6],
    [7,8,9],
    [[10,11,12]],13,14]
 ]
 
 any_list[3]  #출력: [[10,11,12]], 13, 14]
 any_list[3][0] #출력: [10,11,12]
 any_list[3][0][1] #출력 11

5. 리스트의 마지막 요소 제거 하는 법

list.pop()

6. list에 추가하고 싶은 요소가 1개 이상 일 때

list = list+["요소1"+"요소2"]

  • List+[] 를 사용해서 대괄호 안에 넣고 싶은 요소들을 "+"를 사용해 추가한다.

7. del list[0] = 특정 요소 지우기, list = set(list)=중복 요소 제거

del list[0] : list의 첫번째 요소를 지워주는 문법
list = set(list): list에 중복된 요소가 있다면 되는 요소를 지워준다.

  • list1의 중복 요소들을 set()을 활용하 지워 준 후 출력하였다.

8. if 요소 not in 리스트:

문제)
오직 한번만 나타나는 값만을 출력하라.

EX)
[1,2,3,4,5,1,2,3,7,9,9,7] 을 input 하면
4
5
출력

my_list = [s for s in input().split()]
result = []
for i in my_list:
	if i not in result: #result리스트에 i요소가 없다면
    		result.append(i)  # i요소를 추가하라.
    	else:			#아니면(result리스트 i요소가 있다면)
        	result.remove(i) # i요소를 제거하라.
print(result)

* if 요소 not in 리스트:   #리스트 안에 요소가 없다면, 실행
* if 요소 in 리스트: #리스트 안에 요소가 있다면, 실행




profile
꾸준하게 공부하기
post-custom-banner

0개의 댓글