Qual é a diferença entre random.sample e random.shuffle em Python?

Eu tenho uma lista a_tot com 1500 elementos e gostaria de dividir essa lista em duas listas de maneira aleatória. A lista a_1 teria 1300 e a lista a_2 teria 200 elementos. Minha pergunta é sobre a melhor maneira de randomizar a lista original com 1500 elementos. Quando eu tiver randomizado a lista, eu poderia pegar uma fatia com 1300 e outra fatia com 200. Uma maneira é usar o random.shuffle, outra maneira é usar a random.sample. Quaisquer diferenças na qualidade da randomização entre os dois métodos? Os dados na lista 1 devem ser uma amostra aleatória, bem como os dados na lista2. Alguma recomendação? usando shuffle:

random.shuffle(a_tot)    #get a randomized list
a_1 = a_tot[0:1300]     #pick the first 1300
a_2 = a_tot[1300:]      #pick the last 200

usando amostra

new_t = random.sample(a_tot,len(a_tot))    #get a randomized list
a_1 = new_t[0:1300]     #pick the first 1300
a_2 = new_t[1300:]      #pick the last 200

questionAnswers(6)

yourAnswerToTheQuestion