strip для random.sample?

Рейтинг: -3Ответов: 2Опубликовано: 22.03.2023
import random

test_list = ["1", "2", "3", "4", "5", "6"]

print(random.sample(test_list, 1))

Печатает

['4']

Как убрать скобки и кавычки? Так не получается:

import random

test_list = ["1", "2", "3", "4", "5", "6"]

print(random.sample(test_list, 1)).strip()

Пишет:

AttributeError: 'list' object has no attribute 'strip'

Ответы

▲ 2

Если вам нужно выбрать из списка ровно одно значение, то просто используйте random.choice вместо random.sample:

import random

test_list = ["1", "2", "3", "4", "5", "6"]

print(random.choice(test_list))

random.sample используйте если нужно выбрать несколько значений из исходного набора. Эта функция возвращает список, в данном случае список строк. Чтобы объединить список строк в одну строку (вывести, например, 123 вместо ["1", "2", "3"]), используйте метод join:

import random

test_list = ["1", "2", "3", "4", "5", "6"]

print("".join(random.sample(test_list, 3)))
▲ 0

Как вариант ещё можно поставить *, тогда список "распакуется", а кавычки print не станет печатать у просто строки, не находящейся внутри списка:

print(*random.sample(test_list, 1))