función de aprendizaje de Python conocido dos

I. Introducción argumento entre la Forma

Parámetro: parámetro llamado los parámetros formales definidos en la función de fase de definición, denominado como parámetro, correspondiente al nombre de variable.
Argumento: el aviso de llamada por llamada etapa real valor del parámetro, conocido como el argumento, lo que equivale al valor de la variable. 

Las relaciones entre el argumento Forma:

  1, llamada etapa, el argumento (valor de la variable) se unirán al parámetro (nombres de variables).

  2, esta relación de unión sólo se puede utilizar en el cuerpo de la función.
  3, la relación entre el parámetro real implicado en la llamada de función de unión a tomar efecto después del final de la llamada de función de desvinculación.

argumento de valor se pasa, pero el valor puede estar en la forma:
# Formar un: 
FUNC (1,2 ) 

# forma dos: 
. A = 1 
B = 2 
FUNC (A, B) 

# forma tres: 
(int (FUNC '1 ' ), 2 ) 
FUNC (func1 ( 1,2,) , func2 (2,3), 333)

 

II. Tipo de Participación argumentos uso específico
2.1 parámetros posicionales: de izquierda a derecha en el orden de acuerdo con el parámetro de posición parámetro definido denominado 
 
el parámetro de posición: fase de definición de la función de acuerdo con el "nombre de la variable" de izquierda a derecha en el orden definido directamente
 características: valores deben ser transferidos, ni uno más ni uno menos.
DEF FUNC (X, Y):
      Imprimir (X, Y)
 # FUNC (l, 2,3) # Error 
# FUNC # Error (1,.)
 Ubicación argumento: la función de fase llamada, de acuerdo con el orden y algunos de la izquierda con el valor de entrada. 
 Características: la correspondencia de parámetros con la orden.
def func (x, y):
      impresión (x, y) 
func ( 1,2)     # x = 1, x = 2 
func (2,1)     # x = 2, x = 1
 
2.2 parámetros de palabras clave
argumento Palabra clave: la fase llamada de función, en forma de clave = valor de la en pasado-valor
Características: por nombre para pasar un valor de parámetro, la secuencia de referencia puede ser completamente
DEF func (X, Y):
     Imprimir (X, Y) 

func (Y = 2, X = 1 ) 
func ( 1,2 ) 

# mezcla, hace hincapié en 
# 1, la posición debe colocarse antes del argumento argumento de palabra clave 
func (. 1, Y = 2 ) 
FUNC (Y = 2,1 ) 

# 2, no puede pasar se puede repetir para el valor mismo parámetro 
FUNC (. 1, Y = 2, X =. 3 ) 
FUNC ( 1,2, X =. 3, y = 4)

 

2.3 parámetros por defecto
parámetro predeterminado: fase de definición de la función, se ha asignado un parámetro, denominado los parámetros por defecto
Características: Durante la fase de definición ya se ha asignado, lo que significa que la llamada no puede asignar un valor a la etapa
 
DEF FUNC (X, Y = 3. ):
     Imprimir (X, Y) 

# FUNC (X = 1.) 
FUNC (X = 1, Y = 44.444. ) 


DEF Register (nombre, edad, sexo = ' M ' ):
     Imprimir (nombre , edad, sexo) 

el registro ( ' tres armas de fuego ' , 18 ) 
el registro ( ' artillería ' , 19 ) 
el registro ( ' cañón ' , 19 ) 
el registro ( ' no gun ' , 19, ' hembra ' )
 
# Posición entre la Forma mezcla de parámetros por defecto, subrayó: 
# 1, el parámetro de posición debe estar en el parámetro predeterminado izquierda 
DEF FUNC (Y = 2 , X):
     Pass 

# 2, los valores de los parámetros por defecto se asignan en la fase de definición de función , se da precisamente el valor de la dirección de memoria 
# modelo 1:. 
m = 2 DEF FUNC (X, Y = m): # Y => 2 memoria de direcciones de impresión (X, Y 
m = 3333333333333333333 
FUNC ( . 1 ) # modelo 2: 
m = [111,111 ], DEF FUNC (X, Y = m): # Y => [111,111], dirección de memoria de impresión (X, Y) 
m.append ( 3333333 ) 
FUNC ( . 1 ) # . 3, aunque el valor por defecto se puede especificar como cualquier tipo de datos, pero no recomienda el uso de tipos de variables

    




    



# Estado Función ideal: llamar a la función sólo tiene una relación con la función de sí mismo, sin influencia externa código 

DEF FUNC (los ejes X, el y-, Z, L = None):    # Recomendado 
    SI L ES Ninguno: 
        L = [] 
    l.append (X) 
    l.append (Y) 
    l.append (Z) 
    de impresión (L)
 

2.4 longitud variable de parámetro (* y el uso **)

de longitud variable se refiere a la llamada de función, el número de valores (argumento) no es fijo entrante. Argumento se utiliza para la asignación de parámetros, los correspondientes parámetros reales para el desbordamiento deben ser recibidas parámetro correspondiente.

2.4.1 posición de longitud variable parámetro
La I: nombre del parámetro *: posición de desbordamiento para los argumentos que reciben, la posición del desbordamiento * participantes reales se guardan como un formato tupla entonces asignado inmediatamente después de nombre de parámetro 
      * talón puede ser cualquier nombre, pero la convención debe ser args.

def FUNC (x, y, z *): # z = (3,4,5,6) 
    de impresión (x, y, z) 
func ( 1,2,3,4,5,6 ) 

def my_sum (* args ): 
    res = 0
     para artículo en args: 
        res + = elemento
     de retorno res 
res = my_sum (1,2,3,4 ,)
 de impresión (res)

II: * se puede utilizar en los argumentos, el argumento con *, el valor del primer argumento * roto en su posición.
Def función (x, y, z):
     impresión (x, y, z) 

# operación (* [11,22,33]) # operación (11,22,33) 
# operación (* [11,22]) # función (11,22) 

l = [11,22,33 ] 
func ( * l)

III: Tipos de parámetros actuales están marcados con *
 
def func (x, y, * args): # args = (3,4,5,6) 
    de impresión (x, y, args) 

func ( 1,2, [3,4,5,6 ]) 
func ( 1 , 2, * [3,4,5,6]) # func (1,2,3,4,5,6) 
func (* ' hola ' ) # func ( 'h', 'e', 'l' , 'l', 'o')
 
parámetros de palabras clave de longitud variable de 2.4.2
 
La I: ** nombres de los parámetros: para recibir argumento de palabra clave derramado, ** de propagación a un argumento diccionario de palabras clave formato para guardar, y luego asignado a la inmediatamente posterior a nombre del parámetro 
** puede ir seguido de cualquier nombre, pero la convención debe ser kwargs
def func (x, y, ** kwargs):
     impresión (x, y, kwargs) 

func ( 1, Y = 2, a = 1, b = 2, c = 3)
 

II: ** puede ser utilizado en el argumento (** talón único diccionario), con los argumentos *, ** El valor del primer argumento dividido en categorías
def func (x, y, z):
     impresión (x, y, z) 

func ( * { ' x ' : 1, ' y ' : 2, ' z ' : 3}) # func ( 'x', 'y ', 'z') 
func (** { ' x ' : 1, ' y ' : 2, ' z ' : 3}) # func (x = 1, y = 2, z = 3) 

# 错误 
func (* * { ' x ' : 1, ' y ' : 2,}) # func (x = 1, y = 2) 
func (** { 'x ': 1, ' un ' : 2, ' z ' : 3}) # func (x = 1, a = 2, z = 3)
 
III: Tipos de parámetros reales son con **
def func(x,y,**kwargs):
    print(x,y,kwargs)

func(y=222,x=111,a=333,b=444)
func(**{'y':222,'x':111,'a':333,'b':4444})

 

# Mix * y **: * args debe ** kwargs antes 
DEF FUNC (los ejes X, * args, ** kwargs):
     Imprimir (args)
     Imprimir (kwargs) 

FUNC ( 1,2,3,4,5,6, 7, 8, X = 1, Y = 2, Z = 3.. ) 


DEF índice (X, Y, Z):
     Imprimir ( ' index = >>> ' , X, Y, Z) 

DEF warpper (* args, ** kwargs): # args = (. 1,) = {kwargs 'Z' :. 3, 'Y': 2} 
    de índice (* args, ** kwargs)
     # índice (* (1,.) **, { 'Z': . 3, 'Y': 2}) 
    # . índice (1 ,. 3 = Z, Y = 2) 

(envoltura .. 1, Z = 3, Y = 2) # parámetro se pasa a la envoltura con un índice 
# formato original - - "resumen -----" mostrar sus colores

Supongo que te gusta

Origin www.cnblogs.com/imark7/p/12519802.html
Recomendado
Clasificación