Palpitate_ 2019-11-28 15:07 采纳率: 0%
浏览 494

求助如何打乱列表顺序并从中提取每一个元素且不重复?

我的这个程序中需要每一个元素对应一个颜色

positive=[u'友好',u'热情',u'真诚',u'宽容',u'信任',u'理解',u'陪伴',u'忠诚',u'关怀',u'和     睦']
negative=[u'敌对',u'冷漠',u'虚伪',u'刻薄',u'怀疑',u'刁难',u'抛弃',u'背叛',u'排斥',u'虚假']

stimList = []
for word in ['P','N']:
for color in ['red','yellow','blue','green']:
stimList.append( {'word':word,'color':color} )

这里我设置了10次循环并打乱,也就是总共元素出现80次,每个元素出现4次

trials = data.TrialHandler(stimList, 10, method='random')
trials.data.addDataType( ['rt', 'corr','resp'] )

在开始程序前用random.randint进行随机抽取

j=positive[random.randint(0,9)]
x=negative[random.randint(0,9)]
if thisTrial['word']=='P': textWord = j
elif thisTrial['word']=='N': textWord = x

输出后的程序中有的元素重复颜色出现五六次,有的元素指出现了一次。
而我需要的是每个元素都只出现4次并且这4次各对应1个颜色,这里需要怎么修改?

  • 写回答

1条回答

  • 放风喽 2019-11-29 06:00
    关注

    循环4次
    抽取一个元素
    将抽取的元素放进新表
    把列表里的和这个元素一样的全部删除

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog