작은 매듭

5581 단어

1. 함수 도입


함수 -- 도구 (필요할 때 사용하고, 미리 만들기)
함수는 어떤 기능의 코드를 바꾸지 않는다.그것은 단지 한 가지 일을 했을 뿐이다. -> 봉인 (인터페이스) 은 당신의 코드를 더욱 간결하게 할 뿐이다

2. 함수의 정의

def     (      ) ():
    """        """
       
    
def guess():
    """     ,      """
    x = 30
    y = 20
    
    if x > y
        print(x)
    else:
        print(y)
        
print(guess.__doc__)
print(len.__doc__)
s = 'abc'
print(s.startswith.__doc__)

함수 정의의 특성: 함수 정의의 과정, 문법만 검사하고 코드는 실행하지 않음
def func()
    print(x)
    
func()  #     ,     

3. 함수를 정의하는 세 가지 방법


빈 함수
def func():
    pass

def register():
    pass

def login():
    pass

def shopping():
    pass

유참함수
def guess1(x,y):
    """     ,      """
    
    if x > y:
        print(x)
    else:
        print(y)
        
        
guess1(50,20)

참조 함수 없음
def guess2():
    """     ,      """
    x = 30
    y = 20
    
    if x > y:
        print(x)
    else:
        print(y)

4. 함수 호출

def guess1():
    """     ,      """
    
    x = 20
    y = 30
    if x > y:
        print(x)
    else:
        print(y)
       
#      

print(guess1)  #      
guess1()  #      ,       (        )

5. 함수의 반환값


반환 값: 하나의 값(모든 데이터 형식)을 반환합니다.
def guess1():
    """     ,      """
    # return
    # print(1)
    x = 20
    y = 30
    if x > y:
        # print(x)
        return x
    else:
        # print(y)
        return y
    
    num = guess1()  # num = 30
    print('num:',num)
    
    z = 2
    #      ,  z
    print(z * num)
    
    
    lt = [num]
    
    

return의 특징:
  • return은 되돌아오는 값을 되돌려주고, 되돌아오는 값이 없으면 None
  • 을 되돌려줍니다.
  • Return 없이 None 기본 반환
  • 리턴은 함수를 재배하고 다음 코드를 실행하지 않습니다. 여러 개의 리턴이 있을 때 첫 번째 리턴이 끝나면 두 번째 리턴이 실행되지 않습니다
  • return은 쉼표를 통해 여러 개의 값을 되돌릴 수 있으며, 되돌림 값은 원조의 행식으로 받아들여진다
  • 6. 함수의 매개 변수


    유참함수: 매개 변수(손전등/약광, 강약 네가 조절한)의 함수
    사용할 때, 너는 손전등에 그가 강광인지 약광인지 알려라
    뒤에 규정된 것은 매개 변수의 데이터 형식으로 약정된 것이다.뒤에 규정된 것은 반환값의 데이터 형식으로 약정된 것이다
    def xiaoshiping(liangdu:int,duibidu:int) ->int:  #  
        """     ,      """
        
        if liangdu == 0:
            print('  ')
            return 0
        
        if duibidu > 300:
             print('    ')
         else:
             print('av  ')
    
    
    xianshiping(1, 1000)  #    ,        #   

    형삼: 함수 단계의 산물을 정의하고 실삼을 받아들이는 작용을 하며 묘사적 의미를 가진다.
    위치형삼: 왼쪽에서 오른쪽으로 순서대로 실삼의 값을 받다
     def xianshiping(liangdu: int, duibidu: int = 150) -> int:  #   
         """     ,      """
    
         if liangdu == 0:
             print('  ')
             return 0
    
         if duibidu > 299:
             print('    ')
         else:
             print('av  ')

    기본 참조: 1.주지 않으면 기본값 사용하기;호출할 때 값을 전달하면 값을 전달합니다.기본 인삼은 반드시 위치 인삼 뒤에 놓아야 한다
     xianshiping(1)
        
     xianshiping(1, 300)

    실참: 호출 단계의 산물로 형삼에게 구체적인 값을 전달하고 구체적인 값을 가진다(모든 데이터 유형에 적용할 수 있다)
    위치 실삼: 왼쪽에서 오른쪽으로 순서대로 위치 형삼에게 값을 전달하고 일일이 대응한다. 형삼이 몇 개이고 실삼도 반드시 몇 개가 있어야 한다.
    xianshiping(1, 300)  #    ,        #   
    xianshiping(1, 300)  #    ,        #   
    xianshiping(1, 300)  #    ,        #   

    키워드 참조: 1.위치 실참은 반드시 키워드 실참의 앞에 써야 한다.형참명에 따라 형참전치(사용상황, 기본은 0)---> 함수의 매개 변수는 보통 0-3개이고 가능한 한 3개를 초과하지 마세요.
    def xianshiping(duibidu, liangdu, resolution_ratio, length, width):  #   
         """     ,      """
    
        print(liangdu, duibidu, resolution_ratio, length, width)
    
    
    xianshiping(1, 2, 3, 4, 5)
    xianshiping(5, liangdu=1, resolution_ratio=2, length=3, width=4)

    위치형삼: 왼쪽에서 오른쪽으로 실삼의 값을 순차적으로 수신한다
    위치실참: 왼쪽에서 오른쪽으로 차례대로 형삼에게 전치
    기본 참조: 1.기본값이 있습니다. 전삼을 호출하면 전한 값을 사용합니다.전참이 없으면 기본값 2.기본 인삼은 반드시 위치 인삼 뒤에 놓아야 한다
    키워드 참조: 1.형삼 이름대로 전참 2.키워드 실삼은 반드시 위치 실삼의 뒤에 놓아야 한다

    7. 가변 길이 매개변수

         
    def min_2(x, y):
         if x > y:
             return y
         else:
             return x
    
    
    def min_4(a, b, c, d):
         res1 = min_2(a, b)
         res2 = min_2(c, d)
         return min_2(res1, res2)
    
    
     def min_8(a, b, c, d, e, f, g, h):
         res1 = min_4(a, b, c, d)
         res2 = min_4(e, f, g, h)
         return min_2(res1, res2)
    
    
     def min_10(a, b, c, *lt):  # *lt,             ,          
    print(lt)
        a, b, c, d, e, f, g, h, i, j, *_ = lt
        print(_)
        res1 = min_8(a, b, c, d, e, f, g, h)
        res2 = min_2(i, j)
         return min_2(res1, res2)
    
    
    res = min_10(1, 2, 3, 4, 5, 6, 7, -1, 9, 10, 11, 12, 13, 1, 1, 1, 1, 1, 1, 1, 11,
                 1, )  # *,        ,    lt               
    print(res)
    
    #      
    def min_2(x, y):
         if x > y:
             return y
         else:
             return x
    
    
    def min_4(a, b, c, d):
        res1 = min_2(a, b)
        res2 = min_2(c, d)
        return min_2(res1, res2)
    
    
    def min_8(a, b, c, d, e, f, g, h):
         res1 = min_4(a, b, c, d)
         res2 = min_4(e, f, g, h)
         return min_2(res1, res2)
    
    
    def min_10(a, b, c, d, e, f, g, h, i, j):
        print(a, b, c, d, e, f, g, h, i, j)
         res1 = min_8(a, b, c, d, e, f, g, h)
         res2 = min_2(i, j)
         return min_2(res1, res2)
    
    lt = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
     res = min_10(*lt)  # *,        ,    lt               
    # print(res)

    좋은 웹페이지 즐겨찾기