Résumé de l'utilisation de * en Python

À l'heure actuelle, j'ai vu environ 4 utilisations. S'il y a des imperfections, veuillez les ajouter.

1. Opérations mathématiques

print(2 * 3)   	# 6
print(2 ** 3)	# 8 
复制代码

2. Duplication d'objets

print('-' * 5)	# '-----'
复制代码

3. Définition de la fonction

Lors de la définition d'une fonction, ajouter * avant le paramètre pour collecter plusieurs paramètres

def fun1(x, *args):
    print(x)
    print(args)

def fun2(x, **kwargs):
    print(x)
    print(kwargs)

def fun3(*args, **kwargs):
    print(args)
    print(kwargs)

fun1(0, 1, 2, 3)
fun2(0, a=1, b=2, c=3)
fun3(1, 2, 3, a=1, b=2, c=3)
复制代码

4. Appel de fonction

Lors de l'appel de la fonction, ajoutez * avant le paramètre entrant pour décomposer le paramètre

list = [1, 2, 3]
print(*list)   # 1 2 3

data = [(1, 'a'), (2, 'b'), (3, 'c')]
l1, l2 = zip(*data)
print(l1) 	# (1, 2, 3)
print(l2) 	# ('a', 'b', 'c')

import torch.nn as nn
import torchvision.models as models
resnet = models.resnet18(pretrained=True)
modules = list(resnet.children())[:-1]	# remove the last FC layer
resnet = nn.Sequential(*modules)
复制代码

Je suppose que tu aimes

Origine juejin.im/post/7088631917100138527
conseillé
Classement