Executando verificação de segurança...
1

criando um baralho de cartas em python

import random #biblioteca para ter valores aleatorios e aleatorizar itens em uma lista
naipes = ['Ouro', 'Espadas', 'Copas', 'Paus']#lista de naipes
numeros = ['Ás', 2, 3, 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K']#lista de numeros
cartas = [] #deck com todas as 52 cartas
for i in range(4):#range define o tamanho ou quantidade de itens a ser usado
for u in range(13):
cartas.append(str(numeros[u])+" de "+naipes[i]) #append adiciona um valor a uma lista, no caso a lista cartas
b = int(input('Qual a quantidade de cartas?\n'))#recebe um valor digitado pelo usuario e joga em uma variavel
random.shuffle(cartas)#aleatoriza a ordem das cartas
for i in range(b):
print(cartas[i])#imprime a carta na posição do contador

Carregando publicação patrocinada...
2
1

pois é, eu comecei a ler o livro Python_Fluente_by_Luciano_Ramalho que mostra um código de um baralho no início do livro, ele não usa exatamente esse módulo pra mostrar as cartas mas me desafiei a criar um código pequeno que mostre as cartas de um baralho de uma forma aleatória, no caso embaralhadas que é a tradução de shuffle

1

Um detalhe: para pegar uma determinada quantidade de cartas aleatórias, não precisa necessariamente embaralhar tudo, você pode usar a função random.sample.

E não precisa de range para percorrer as listas, você pode fazer for elemento in lista diretamente (assim não precisa ficar mudando o range quando o tamanho da lista mudar, por exemplo - na verdade é melhor porque nem precisa saber o tamanho da lista). E desde o Python 3.6 é possível usar f-string para construir strings.

Ficaria assim:

import random

naipes = ['Ouros', 'Espadas', 'Copas', 'Paus']
numeros = ['Ás', 2, 3, 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K']
cartas = []
for naipe in naipes:
    for num in numeros:
        cartas.append(f'{num} de {naipe}')

# dê um nome melhor do que "b"
qtd_cartas = int(input('Qual a quantidade de cartas?\n'))
for carta in random.sample(cartas, qtd_cartas):
    print(carta)

Claro que se for distribuir as cartas entre os jogadores, aí é melhor embaralhar tudo com shuffle. Mas se só quer uma amostra aleatória, sample é mais adequado por manter a lista original intacta e só pegar os elementos aleatoriamente.