파 이 썬 함수

파 이 썬 함수
4.567917.함 수 는 가장 기본 적 인 코드 추상 적 인 방식 이다
4.567917.Python 에 유용 한 함수 가 많이 내장 되 어 있 습 니 다.우 리 는 직접 호출 할 수 있 습 니 다
4.567917.함수 의 장점 은 프로 그래 밍 을 간소화 하 는 것 입 니 다.우 리 는 공공 코드 논 리 를 함수 에 설명 합 니 다.예:사용자 가 Cosole 대 에서 사용자 정 보 를 입력 하도록 요구 할 때 input()함수 의 특징:특정한 조작 을 완성 할 수 있다4.567917.함 수 를 호출 하려 면 함수 의 이름과 파 라 메 터 를 알 아야 합 니 다.예 를 들 어 절대 값 을 구 하 는 함수 ads()는 하나의 매개 변수 만 있 습 니 다.python 의 공식 문서 에서 직접 볼 수 있 습 니 다:http://docs.python.org/3/library/functions.html#abs
4.567917.또한 대화 식 명령 행 은 help(abs)를 통 해 abs 함수 의 도움말 정 보 를 볼 수 있 습 니 다
\#abs 함수 호출:
>>> abs(100)
100
>>> abs(-20)
20
>>> abs(12.34)
12.34

\#함 수 를 호출 할 때 들 어 오 는 매개 변수 수가 틀 리 면 TypeError 의 오 류 를 보고 하고 Python 은 abs()가 있 고 1 개의 매개 변수 만 있 지만 두 개 를 제시 합 니 다.
>>> abs(1, 2)
Traceback (most recent call last):
  File "", line 1, in 
TypeError: abs() takes exactly one argument (2 given)

\#들 어 오 는 매개 변수 수량 이 맞 지만 매개 변수 유형 이 함수 에 의 해 받 아들 여지 지 않 으 면 TypeError 의 오 류 를 보고 하고 오류 정 보 를 제공 합 니 다:str 는 잘못된 매개 변수 유형 입 니 다.
>>> abs('a')
Traceback (most recent call last):
  File "", line 1, in 
TypeError: bad operand type for abs(): 'str'

\#max 함수 max()는 여러 개의 인 자 를 받 고 가장 큰 것 을 되 돌려 줍 니 다.
>>> max(1, 2)
2
>>> max(2, 3, 1, -5)
3

데이터 형식 변환
\#Python 에 내 장 된 상용 함 수 는 데이터 형식 변환 함수 도 포함 합 니 다.예 를 들 어 int()함 수 는 다른 데이터 형식 을 정수 로 변환 할 수 있 습 니 다.
>>> int('123')
123
>>> int(12.34)
12
>>> float('12.34')
12.34
>>> str(1.23)
'1.23'
>>> str(100)
'100'
>>> bool(1)
True
>>> bool('')
False

\#함수 명 은 사실 함수 대상 을 가리 키 는 인용 입 니 다.함수 명 을 하나의 변수 에 부여 할 수 있 습 니 다.이 함수 에'별명'을 붙 인 것 과 같 습 니 다.
>>> a = abs #   a  abs  
>>> a(-1) #        a  abs  
1

\#Python 에서 함수 가 def 문 구 를 사용 할 것 을 정의 합 니 다.함수 이름,괄호,괄호 에 있 는 인자 와 콜론 을 순서대로 작성 합 니 다.그리고 들 여 쓰기 블록 에서 함수 체 를 만 듭 니 다.함수 의 반환 값 은 return 문 구 를 사용 하여 되 돌려 줍 니 다.
\#함 수 를 어떻게 정의 합 니까?
# -*- coding: utf-8 -*-
def my_abs(n):
    if n >= 0:
        return n;
    else:
        return -n;

\#호출 함수 실행
a=int(input('          :'))
print(my_abs(a))

\#함수 의 특징 2:함수 가 반환 값 을 가지 고 있 습 니 다.반환 값:함 수 를 실행 한 후에 받 아들 일 수 있 는 값\#return 자구 뒤의 python 코드 는 틀 리 지 않 지만 실행 되 지 않 습 니 다.
def my_abs(n):
    if n >= 0:
        return n;
        print('hiahia')
    else:
        return -n;
        print('hiahia')

빈 함수
\#아무것도 하지 않 는 빈 함 수 를 정의 하려 면 pass 문 구 를 사용 할 수 있 습 니 다:
def nop():
    pass

\#pass 문 구 는 아무것도 하지 않 는데 무슨 소 용이 있 습 니까?실제로 pass 는 자리 차지 문자 로 사용 할 수 있 습 니 다.예 를 들 어 함수 의 코드 를 어떻게 쓰 는 지 아직 생각 하지 못 했 으 면 먼저 pass 를 놓 아서 코드 가 실 행 될 수 있 도록 할 수 있 습 니 다.
\#pass 는 다른 문장 에 도 사용 할 수 있 습 니 다.예 를 들 어:
if age >= 18:
    pass

\#pass 가 없 으 면 코드 가 실행 되면 문법 오류 가 발생 합 니 다.
매개 변수 검사
\#함 수 를 호출 할 때 인자 개수 가 맞지 않 으 면 Python 해석 기 가 자동 으로 검사 되 고 TypeError 를 던 집 니 다.
>>> my_abs(1, 2)
Traceback (most recent call last):
  File "", line 1, in 
TypeError: my_abs() takes 1 positional argument but 2 were given

\#하지만 매개 변수 형식 이 틀 리 면 Python 해석 기 가 검사 해 줄 수 없습니다.해 봐 myabs 와 내장 함수 abs 의 차이:
>>> my_abs('A')
Traceback (most recent call last):
  File "", line 1, in 
  File "", line 2, in my_abs
TypeError: unorderable types: str() >= int()
>>> abs('A')
Traceback (most recent call last):
  File "", line 1, in 
TypeError: bad operand type for abs(): 'str'

\#부적 절 한 인자 가 들 어 왔 을 때 내 장 된 함수 abs 는 인자 오 류 를 검사 하고 우리 가 정의 하 는 myabs 에 매개 변수 검사 가 없 으 면 if 문장 에 오류 가 발생 할 수 있 습 니 다.오류 정 보 는 abs 와 다 릅 니 다.그래서 이 함수 의 정 의 는 완벽 하지 않다.
\#my 를 수정 합 시다.abs 의 정 의 는 매개 변수 유형 을 검사 하고 정수 와 부동 소수점 형식의 매개 변수 만 허용 합 니 다.데이터 형식 검 사 는 내 장 된 함수 isinstance()로 이 루어 집 니 다.
def my_abs(x):
    if not isinstance(x, (int, float)):
        raise TypeError('bad operand type')
    if x >= 0:
        return x
    else:
        return -x

\#매개 변수 검 사 를 추가 한 후 잘못된 매개 변수 형식 을 입력 하면 함수 에서 오 류 를 던 질 수 있 습 니 다.
>>> my_abs('A')
Traceback (most recent call last):
  File "", line 1, in 
  File "", line 3, in my_abs
TypeError: bad operand type
             。

여러 값 되 돌리 기
\#함 수 는 여러 값 을 되 돌려 줄 수 있 습 니까?답 은 긍정 적 이다.반환 값 은 하나의 tuple(원 그룹)으로 포장 되 지만 문법 적 으로 하나의 tuple 을 되 돌려 주면 괄호 를 생략 할 수 있 고 여러 변 수 는 하나의 tuple 을 동시에 받 아들 여 위치 에 따라 대응 하 는 값 을 부여 할 수 있 기 때문에 Python 의 함수 가 다 중 값 을 되 돌려 주 는 것 은 사실은 하나의 tuple 을 되 돌려 주 는 것 이지 만 쓰기 가 더욱 편리 합 니 다.
def hiahia():
    return 1,2,3,4,5,6
print(hiahia())

작은 매듭
  • 함 수 를 정의 할 때 함수 이름과 매개 변수 개 수 를 확인 해 야 합 니 다

  • 4.567917.필요 하 다 면 먼저 매개 변수의 데이터 유형 을 검사 할 수 있다
  • 함수 체 내 부 는 return 으로 함수 결 과 를 수시로 되 돌 릴 수 있 습 니 다
  • 함수 가 실행 되 었 을 때 return 문장 이 없 을 때 자동 return None.

  • 4.567917.함 수 는 여러 값 을 동시에 되 돌 릴 수 있 지만 사실은 하나의 tuple 입 니 다
    함수 고급
    \#교체 함수:한 함수 가 다른 함 수 를 매개 변수 로 호출 할 수 있 음 을 설명 할 수 있 습 니 다\#함수 와 함수 간 에 서로 호출 할 수 있 습 니 다.
    def a(number):
        print('  number:%s'%number)
    def b(a):
        a(8);
    b(a);

    \#재 귀 함수 함수 가 스스로 자신 을 호출 할 수 있 습 니까?일종 의 순환 방식 을 형성 하지만 피해 야 할 무한 귀속
    \#재 귀 함수 의 첫 번 째 예:단계 곱 하기 12345 는 단계 곱 하기 적 이다.
    sum=1;
    for i in range(1,6):
        sum*=i;
    print(sum)

    \#재 귀 를 통 해 단 계 를 실현 합 니 다.
    def clac(n):# 5       1*2*3*4*5
       #       
       if n==1:
           return 1;
       return n*clac(n-1)
    print(clac(5))

    \#컴퓨터 밑바닥 의 알고리즘:황금 분할법 은 매우 흔히 볼 수 있 는\#피 보 나치 수열 의 합 을 계산한다
    he=0
    def fb(b):
        if b<=1:
            return b;
        else:
            return fb(b-1)+fb(b-2);
    a=int(input('               :'))
    for i in range(a):
        he=he+fb(i)
    print(he)

    좋은 웹페이지 즐겨찾기