파이썬 정리

신범철·2021년 5월 3일
0

21-1파이썬수업

목록 보기
2/6

1장

여러 종류의 파이썬 개발환경

  1. 파이참
  2. IDLE
  3. Atom
  4. 구글 코랩
  5. 주피터 노트북

2장

파이썬 연산자

/ = 나눈몫 ex) 10/5 = 2.0
// = 나눈 몫의 소수점 이하를 버린 것 ex)10//3 = 3
xy x의 y승 ex) 23 = 8
abs(x) = x의 절대값 ex) abs(-9) = 9
round (x,n) = x를 n자리수에서 반올림 ex) round(3.621,2) =3.62

변수명

  1. 변수에 붙인 이름
  2. 변수명으로는 알파벳, 숫자, 언더바, 한자, 한글, 그리스 문자 사용가능
  3. 변수명은 의미 있는 단어로 표기하는 것이 좋음
  4. 변수명은 대소문자 구분
  5. 특별한 의미가 있는 예약어는 사용 할수 없음 ex)print, for in 등등

변수를 사용하는 이유?

  • 숫자 투성이였던 프로그램에 의미를 부여하는 것
  • 변수를 사용하면 프로그램이 읽기 편함

30sai 문법 오류 발생

  • 파이썬은 숫자로 시작하는 이름을 갖는 변수를 사용할 수 없음
  • 언더바(_)로 시작하는 이름을 갖는 변수를 사용 가능
  • 예약어 사용 안됨

파이썬 print()함수

print("Hello",end=' ')
print('python')#Hello Python

print('Hello','Python',sep='#')#Hello#Python

end 인자를 사용하면 print함수 마지막 효과를 변경할 수 있다.(기본값은 공백)
sep 인자를 사용하면 콤마로 구분된 문자열을 다르게 결합할 수 있다.(기본값은 공백)

특수한 기호를 사용할 때의 이스케이프 시퀀스

삼중인용부호

  • 여러 행에 걸쳐 문자열을 표현하려고 할 경우 삼중인용부호를를 사용
  • 큰따옴표 또는 작은따옴표를 세 개 연속으로 붙여 씀

문자열 과 숫자 연결

  • "문자열" + "문자열" 가능
  • "문자열" + 숫자 불가능

문자열에 변수 값 넣기

#수치와 문자열을 결합한다.(제대로 동작하지 않는 예)
temperature = 30
print("오늘의 기온은 " + temperature + "도입니다.")

오류! 왜와이
문자열끼리는 연결할 수 있지만 정수형(int)과 문자열(str)은 연결 불가
따라서 정수형을 문자열형으로 변환 필요

#제대로 동작하는 방법
temperature_i =30
temperature = str(temperature_i)
print("오늘의 기온은 " + temperature + "도입니다.")

format() 함수로 값을 끼워 넣는 방법

문자열에 값을 끼워 넣는 방법으로 format() 함수를 사용할 수 있음
ex) "임의의 문자열".format(값0, 값1,값2,...)
-> 문자열 안쪽에서 자신이 값을 넣고 싶은 지접에서 "...{0}..."이라고 써 넣음
-> 만일 두개의 값을 넣고 싶다면 "..{0}..{1}.."라고 씀
-> 그 후 , 바로 이어서 .format(값0, 값1)이라는 방식으로 메서드를 씀
ex)
#인치를 센티미터로 변환
per_inch = 2.54
inch = 24
cm = inch * per_inch
#문자열로 설명을 추가한다.
desc = "{0}인치 = {1}센티미터".format(inch, cm)
print(desc)

소수점 몇째자리 까지 나타내기

f = 3.1567
print(format(f,".2f")) #3.16 반올림까지 됨

문자열 인덱싱 : []

print("안녕하세요"[0:2])#안녕
print("안녕하세요"[:2])#안녕
print("안녕하세요"[2:])#하세요
문자열 길이 : len()
print(len("안녕하세요"))#5

3장 반복문

pass문

프로그래밍의 전체 골격을 잡아 놓고, 내부에 처리할 내용은 나중에 만들고자 할 때 pass라느 키워드 입력

반복문에서 else 블록을 사용할 경우

반복 조건식이 거짓일 때

  • 반복문을 한번도 실행하지 않았을 때
  • break(강제로)으로 반복문을 빠져나오지 않고 반복을 다 돌아서 빠져나왔을 때

4장 리스트와 함수

리스트 함수

  • append() => 리스트명.append(요소) //리스트에 마지막에 추가됨
  • insert() => 리스트명.insert(삽입할 인덱스 번호,삽입할 요소)//리스트에 요소 추가
  • extend() => 리스트명.extend(더할 요소)//서로 다른 리스트를 결합하려면 '+' 연산자 또는 extend() 함수 사용
  • del 키워드 => del 리스트명[인덱스 번호]//그 인덱스 번호의 값 삭제
  • pop() => 리스트명.pop(인덱스번호)//그 인덱스 번호의 값 삭제
  • remove() => 리스트명.remove(value)//그 리스트 안에 값삭제
  • clear() => 리스트.clear()=> 리스트 모든 요소 삭제

튜플(tuple)

리스트와 거의 비슷하지만 그 안에 있는 요소의 값을 변경할 수 없음
튜플과 리스트를 쉽게 변환 가능
튜플에서 리스트로 변환 : list(튜플)
리스트에서 튜플로 변환 : tuple(리스트)

집합(set)

리스트와 비슷
집합도 여러 개의 값을 기록
그러나 리스트와 달리 중복되는 값을 포함 x ,순서 x
그 대신 집합을 사용하면 결합, 교차, 차집합, 대상 차 같은 수학적 연산 가능
집합 생성은 {..}하거나 set()함수 사용

  • 차집합 : '-'연산자로 계산
    ex) box1 = {'망치','못','니퍼'}
    box2 = {'못','니퍼'}
    print(box1-box2) # {'망치'}
  • in을 사용하여 어떤 요소가 집합에 포합되어 있는지 조사가능
    ex) '니퍼' in box2 # True
    '나사' in box2 # False
  • 교집합은 '&'연산자 합집합은 '|'연산자(더하기 개념)

딕션너리(dict)의 요소를 열거하는 방법

  1. a = list(d.keys()) # 키 목록을 리스트형으로 얻는다.
  2. sorted(a) #키 목록을 정렬된 리스트형으로 얻는다.
  3. a.values() #값목록을 얻는다.

가변개수인자

ex) def print_args(**args):
print(args)
print(type(arge))
print_args(a=30,b=50,c=60) #{'a':30,'b':50,'c':60} <class 'dict'>
print_args(aa='hoge',bb='fuge') #{'aa':'hoge','bb':'fuga'}<class 'dict'>

  • 가변개수를 지정할 때
  • *arg처럼 곱셈기호가 하나만 추가하면 튜플
  • **arg처럼 곱셈 기호 두개 추가하면 딕셔너리

###익명 함수 ( 람다 함수)

  • 이름이 없는 함수
  • 이름이 없는 함수를 변수에 대입하여 사용
  • 익명 함수를 사용하려면 람다(lambda)를 이용
  • 익명 함수의 사용법
  • v = lambda 인수 1, 인수 2, ...: 식
  • 람다식 반환값은 함수 오브젝트
    ex) x2 = lambda x:x*2

    def x2(x):
    return x*2

        
  • 람다가 정말로 도움이 될 때는 함수 오브젝트를 인수로 받는 함수를 작성할 때
  • 리스트의 모든 요소를 처리할 때는 람다가 큰 역할을 함
  • 람다와 map()을 함께 사용하는 방법
profile
https://github.com/beombu

0개의 댓글