160 lines
3.7 KiB
Markdown
160 lines
3.7 KiB
Markdown
|
# Operador \*
|
||
|
|
||
|
### Casos de uso
|
||
|
- [Multiplicación](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#multiplicaci%C3%B3n)
|
||
|
- [Potencia/Exponente](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#potencia)
|
||
|
- [Creacion de lista, tupla o string](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#crear-lista-con-elementos-repetidos)
|
||
|
- En \*args, \*\*kwargs y parametros llave valor (keywords)
|
||
|
- [Desempaquetando listas, tuplas o diccionarios en argumentos de funciones](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#desempaquetando-lista-y-tupla-en-argumentos-de-funcion)
|
||
|
- [Desempaquetando contenedores](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#desempaquetando-contenedor)
|
||
|
- [Fusionando contenedor en una lista o diccionario](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#fusionando-contenedor-en-una-lista-tupla-y-set)
|
||
|
- [Fusionando diccionarios](https://gitea.kickto.net/devfzn/Apuntes_Python/src/branch/master/02_conceptos/19_asterisk_operator#fusionando-diccionarios)
|
||
|
|
||
|
----
|
||
|
|
||
|
#### Multiplicación
|
||
|
|
||
|
```python
|
||
|
resultado = 5 * 5
|
||
|
|
||
|
print(resultado)
|
||
|
# 25
|
||
|
```
|
||
|
|
||
|
#### Potencia
|
||
|
```python
|
||
|
resultado = 2 ** 3
|
||
|
print(resultado) # 8
|
||
|
```
|
||
|
|
||
|
#### Crear lista con elementos repetidos
|
||
|
```python
|
||
|
lista = [0, 1] * 10
|
||
|
print(lista) # [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
|
||
|
```
|
||
|
|
||
|
#### Crear tupla con elementos repetidos
|
||
|
```python
|
||
|
tupla = (0, 1) * 10
|
||
|
print(tupla) # (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
|
||
|
|
||
|
```
|
||
|
#### Crear string con elementos repetidos
|
||
|
```python
|
||
|
cadena = "ER" * 10
|
||
|
print(cadena) # ERERERERERERERERERER
|
||
|
|
||
|
# *args, **kwargs y parametros llave valor (keywords)
|
||
|
def foo(a, b , *args, **kwargs):
|
||
|
print(a)
|
||
|
for arg in args:
|
||
|
print(arg)
|
||
|
for key in kwargs:
|
||
|
print(key, kwargs[key])
|
||
|
|
||
|
foo(1,2,3,4,5,seis=6, siete="siete")
|
||
|
# 1
|
||
|
# 3
|
||
|
# 4
|
||
|
# 5
|
||
|
# seis 6
|
||
|
# siete siete
|
||
|
```
|
||
|
|
||
|
#### Desempaquetando lista y tupla en argumentos de funcion
|
||
|
|
||
|
```python
|
||
|
def boo(a, b, c):
|
||
|
print(a, b, c)
|
||
|
|
||
|
lista = [0, 1, 2]
|
||
|
boo(*lista) # 0 1 2
|
||
|
|
||
|
tupla = (0, 1, 2)
|
||
|
boo(*tupla) # 0 1 2
|
||
|
|
||
|
#### Desempaquetando diccionario en argumentos de funcion
|
||
|
|
||
|
```python
|
||
|
diccionario = {'a':1, 'b':2, 'c':'tres'}
|
||
|
|
||
|
boo(**diccionario) # 1 2 tres
|
||
|
```
|
||
|
|
||
|
#### Desempaquetando contenedor
|
||
|
|
||
|
Desempaqueta elementos (lista, tupla o set), en elementos simples o multiples.
|
||
|
|
||
|
```python
|
||
|
numeros = [1, 2, 3, 4, 5, 6]
|
||
|
*comienzo, ultimo = numeros
|
||
|
```
|
||
|
|
||
|
Lista con todos los elementos excepto el ultimo
|
||
|
```python
|
||
|
print(comienzo) # [1, 2, 3, 4, 5]
|
||
|
```
|
||
|
#### Ultimo elemento de la lista
|
||
|
```python
|
||
|
print(ultimo)
|
||
|
# 6
|
||
|
```
|
||
|
|
||
|
#### Siempre desempaqueta como lista
|
||
|
```python
|
||
|
numeros = (1, 2, 3, 4, 5, 6)
|
||
|
|
||
|
comienzo, *ultimos = numeros
|
||
|
|
||
|
print(comienzo)
|
||
|
# 1
|
||
|
print(ultimos)
|
||
|
# [2, 3, 4, 5, 6]
|
||
|
```
|
||
|
|
||
|
#### Desempaquetado en medio
|
||
|
```python
|
||
|
primero, segundo, *intermedios, penultimo, ultimo = numeros
|
||
|
|
||
|
print(primero)
|
||
|
# 1
|
||
|
print(segundo)
|
||
|
# 2
|
||
|
print(intermedios)
|
||
|
# [3, 4]
|
||
|
print(penultimo)
|
||
|
# 5
|
||
|
print(ultimo)
|
||
|
# 6
|
||
|
```
|
||
|
|
||
|
#### Fusionando contenedor en una lista, tupla y set
|
||
|
```python
|
||
|
lista = [1,2,3]
|
||
|
tupla = (4,5,6)
|
||
|
set_ = {7,8,9}
|
||
|
|
||
|
lista2 = [*lista, *tupla, *set_]
|
||
|
tupla2 = (*lista, *tupla, *set_)
|
||
|
set_2 = {*lista, *tupla, *set_}
|
||
|
|
||
|
print(lista2)
|
||
|
# [1, 2, 3, 4, 5, 6, 8, 9, 7]
|
||
|
|
||
|
print(tupla2)
|
||
|
# (1, 2, 3, 4, 5, 6, 8, 9, 7)
|
||
|
|
||
|
print(set_2)
|
||
|
# {1, 2, 3, 4, 5, 6, 7, 8, 9}
|
||
|
```
|
||
|
|
||
|
#### Fusionando diccionarios
|
||
|
```python
|
||
|
dicc_a = {'a':1, 'b':2}
|
||
|
dicc_b = {'c':3, 'd':4}
|
||
|
dicc_c = {**dicc_a, **dicc_b}
|
||
|
|
||
|
print(dicc_c)
|
||
|
# {'a': 1, 'b': 2, 'c': 3, 'd': 4}
|
||
|
```
|