从列表中选择特定位置的项目

时间:2018-12-14 20:43:57

标签: python list loops random

我有一个列表列表:

my_list = [['abc','defg','hij'],['klm','nopqrs','tuvw'],['xy','zabc','def'],['ghij','klmnop','qrs']]

我想从所有列表中选择随机列表,然后在第二个位置打印字符串。

我尝试过:

for item in my_list:
    print(random.sample(item[1],len(item[1]))

4 个答案:

答案 0 :(得分:1)

my_list = [['abc','defg','hij'],['klm','nopqrs','tuvw'],['xy','zabc','def'],['ghij','klmnop','qrs']]
import random
print (random.choice(my_list)[1])

答案 1 :(得分:0)

请勿重复。选择一个随机索引,然后将字符串结果显示在该索引中。

import random
my_list = [['abc','defg','hij'],['klm','nopqrs','tuvw'],['xy','zabc','def'],['ghij','klmnop','qrs']]
random_index = random.randint(0, len(my_list) - 1) # will generate random index from range 0 to 3
word_index = 1
my_list [random_index][word_index]

答案 2 :(得分:0)

让我们分解一下。这是列表的列表:

my_lists = [
    ['abc', 'defg', 'hij'],
    ['klm', 'nopqrs', 'tuvw'],
    ['xy', 'zabc', 'def'],
    ['ghij', 'klmnop', 'qrs']
]
  

我想从所有列表中选择随机列表

chosen_list = random.choice(my_lists)
  

...并在第二个位置打印字符串。

print(chosen_list[1]) # remember Python uses zero-based indexing

答案 3 :(得分:0)

只需与my_listrandom.randint一起使用,即可在random.choice中选择一个随机索引。这个:

from random import randint
list_choice = my_list[randint(0, len(my_list-1))]

这:

from random import choice
list_choice = choice(my_list)

都将使list_choice具有my_list中的随机值。然后,您可以执行此操作以在列表中打印第二个值:

print(list_choice[1])

要使数字看起来更随机,可以使用random.seedtime.time将随机种子设置为当前时间:

import random
import time

random.seed(time.time())

完成所有操作后,完整的代码应为:

import random
import time

my_list = [['abc','defg','hij'],['klm','nopqrs','tuvw'],
           ['xy','zabc','def'],['ghij','klmnop','qrs']]

random.seed(time.time())
list_choice = random.choice(my_list)

print(list_choice[1])