CAFE

과제게시판

python express 5장-6장

작성자2001224정유나|작성시간22.10.06|조회수4 목록 댓글 0

chap.05 함수

 

(1) 함수란?

:특정 작업을 수행하는 명령어들의 모음에 이름을 붙인 것

 

함수 정의

def 함수이름(매개변수1,매개변수2):

    명령문1

    명령문2

(2) 디폴트 인수

-파이썬에서는 함수의 매개변수가 기본 값을 가질 수 있음.

(3) 키워드 인수

 매개변수의 위치가 달라도 됨. 이름만 같으면 , 키워드 인수 뒤에 그냥 인수는 나올수 없음.

(4) 가변 인수

가변인수: 함수에 전달하는 값이 몇개인지 모를때 사용

 

*연산자로 언패킹

 

*args 와 같은 *매개변수를  사용--> 가변 길이 인수를 함수에 전달 가능 ,but 키워드 인수는 전달 불가

**args와 같은 이중 별표 사용 --> 가변 길이 키워드 인수 나타냄 . 인수는 딕셔너리 형태로 전달됨.

*와**를 이용해 언패킹하는 언패킹 연산자는 객체의 값을 포장해제하는 연산자이다.

(5) 여러개의 값 반환하기

 

(6) 순환

 

팩토리얼 구현 함수

 

나무를 그리는 프랙탈 프로그램 작성하기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import turtle
def drawTree(branch,t):
    if branch>5:
        t.forward(branch)
        t.right(20)
        drawTree(branch-15,t)
        t.left(40)
        drawTree(branch-15,t)
        t.right(20)
        t.backward(branch)
 
def main():
    t=turtle.Turtle()
    window = turtle.Screen()
    t.left(90)
    t.up()
    t.backward(200)
    t.down()
    t.color("green")
    drawTree(100,t)
    window.exitxxonclick()
 
main()
cs

 

 

(7) 변수의 범위

 

함수안에서 전역변수를 변경하면 변경안됨.

전역변수의 값을 함수 안에서 변경하고싶으면 -->global키워드 사용

 

chapter.06 파이썬 자료구조1(리스트)

 

리스트는 항목들을 저장하는 컨테이너로서 그 안에 항목들이 순서를 가지고 저장된다. 리스트는 항목의 개수가 증가하면 자동으로 늘어난다. 어떠한 타입도 저장 가능.

 

1.리스트 만들기

대괄호 이용

 

2.항목 접근 

-항목의 인덱스 이용 0부터 시작,-1이면 맨 마지막 항목.

 

리스트길이 확인 len(리스트 이름)

 

3.리스트 방문

인덱스 값 사용하여 방문

4.동시에 두개 리스트 방문

zip()함수는 2개의 리스트를 받아서 항목 두개를 묶어서 제공

 

5.리스트 연산들

-append()

:새로운 요소를 리스트의 맨 끝에 추가함.

 

-insert(인뎃 번호, 항목)

:지정된 위치에 요소 추가

6.리스트 탐색하기

특정 항목 찾는 법

list.index(찾는 항목) = 반환값은 항목 위치 인덱스값

7.요소 삭제하기

list 의 1번째 인덱스값을 삭제하여 반환.

함수는 지정요소를 입력하면 이 요소를 인덱스에서 삭제하고 반환은 안함.

 

8.항목이 리스트 안에 있는지 검색하는 법

434가 리스트 요소안에 있으면 제거

 

if 434 not in list: 도 사용 가능 .. 요소안에 없으면.. 명령실행

 

9.최대값 , 최소값

 

min(리스트이름 넣기),max(리스트이름)

 

10.정렬

 

list.sort()

 

 

 

역순 정렬

list.sort(reverse=True)

11.정렬2

list2 = sorted(list):크기순으로 정렬된 새로운 리스트 반환

 

12.리스트가 가지고있는 메소드

extend() : 리스트의 모든 요소를 다른 리스트에 추가

clear():리스트의 모든 항목 삭제

count():항목개수 반환

reverse():항목의 순서 반대로

copy():리스트의 복사본 반환

 

13.리스트에서 사용할 수 있는 내장함수

sum(리스트 이름) : 항목의 합계 계산

 

14. 리스트에서 랜덤으로 선택하기

random모듈의 random.choice(리스트이름)함수 사용하여 랜덤으로 리스트 요소 하나 반환

15.두번째로 큰 수 찾기

16.리스트 합병

+연산자 사용

17.리스 복제

*사용

용도 고정된값으로 리스트 초기와 ex)a=[0] * 12 

 

18.리스트 비교

==  : 리스트 첫번째부터 비교해서 모든 항목이 같으면true

>: 리스트 첫번째 항목부터 비교해서 전체연산이 true이면 true 반환

<:

!= 같음

 

19.리스트 복사

리스트 변수에는 리스트가 저장되는 것이 아니라 리스트는 다른곳에 저장되고 리스트의 참조값만 변수에 저장된다. 참조값이란 메모리에서 리스트 객체의 위치.

list2 =list

리스트 복사시 리스트는 복사 되지 않음. 모두 동일한 리스트를 가리킬 뿐

얕은복사임.

 

복사하려면 깊은 복사해야함.

-list()사용 : 이 함수는 다른 리스트나 데이터들을 받아서 새로운 리스트 생성함.

20.슬라이싱

:리스트에서 한번에 여러개의 항목을 추출하는 기법

-리스트[start:stop] start에서 stop-1까지 출력

 

 

 

복사본 생성 가능

lista = listb[:] 깊은복사본 생성 가능

 

 

21.고급 슬라이싱

리스트[start:stop:step] step =2 이면 2씩 증가하면서 요소들 추출.

 

역순 추출

스텝==-1로 설정

 

 

리스트 마지막 요소 삭제

del list[-1]

22.리스트와 함수

함수로 인수를 전달하는 방식 

-값으로 호출하기:변수의 복사본이 함수로 전달됨.

 

-참조로 호출하기 : 매개변수를 통해 원본 변수를 변경 가능

 

@@@@리스트는 참조값으로 전달되기때문에 함수안에서 변경 가능

23.리스트 함축✨✨✨✨✨✨✨✨✨✨✨✨✨✨

: [수식 for( 변수 in 리스트)if 조건]

squares = [ x*x  for x in range(10) ]

== range(10)에 속하는 모든 정수에 대하여 x^2을 계산하여서 리스트를 생성한다.

 

squares = [ x*x  for x in range(10) if x%2==0]

== range(10)에 속하는 모든 찍수인 !!! 정수에 대하여 x^2을 계산하여서 리스트를 생성한다.

if를 사용해 조건 추가

24.다양한 리스트 함축

 

가격이 음수이면0으로 바꾸기.

단어의 첫 글자만 추출하여 리스트 만들기

두개 인수 동시 사용

0~99까지 정수중 2의 배수이면서 3의 배수인 수모아 리스트 만들기

 

25.  2차원 리스트!!!

 

위 2차원 리스트는 초기값이 미리 결정되어 있어서 정적으로 생성되었다

 

동적 생성 가능

 

 

26.요소 접근

[행][열]

 

2차원 리스트 모든 값 출력

27.2차원 리스트와 리스트 함축

6개의 행을 만들고, 내부 리스트는 5까지 순차적인 값 채움.

 

 

---

 

리스트의 각 행에있는 요소들이 하나의 리스트로 병합됨.

 

28.전치 행렬 계산

다음검색
현재 게시글 추가 기능 열기
  • 북마크
  • 신고 센터로 신고

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼