解决思路:

1 确定团队成员个数num,然后根据成员个数生成元素非重复的数组;

2 构成一个团队成员字典,键:成员名  值:0, 然后将生成的数组分别赋值给字典键对应的值;

话不多说,看代码便知:

# -*- coding: utf-8 -*-
import random # 团队成员名对应随机数字典
nsdlTeamMember = {'mem1':0, 'mem2':0, 'mem3':0, 'mem4':0, 'mem5':0, 'mem6':0, 'mem7':0, 'mem8':0} def teamMarking(teamMember):
#存储生成非重复随机数的列表
chooseNumList = []
# 生成成员个数的非重复随机数
for i in range(len(teamMember.keys())):
num = random.randint(1,len(teamMember.keys()))
while num in chooseNumList:
num = random.randint(1,len(teamMember.keys()))
chooseNumList.append(num) # 将生成的随机数数组赋值给成员键对应的值
print("一共有个%d成员,抓阄结果如下:"% len(teamMember.keys()))
# print("一共有个%d成员,分别是:%s\n抓阄结果如下:" %(len(teamMember.keys()),' '.join(teamMember.keys())))
index = 0
for k,v in teamMember.items():
v = chooseNumList[index]
index += 1
print(k.ljust(8) + str(v).rjust(4)) if __name__ == '__main__':
teamMarking(nsdlTeamMember)

-------  实际运行结果:----------

[cxy@localhost-live python]$ python team_marking.py
一共有个8成员,抓阄结果如下:
mem5 1
mem4 7
mem7 8
mem6 3
mem1 2
mem3 4
mem2 5
mem8 6
[cxy@localhost-live python]$ python team_marking.py
一共有个8成员,抓阄结果如下:
mem5 6
mem4 5
mem7 3
mem6 1
mem1 8
mem3 4
mem2 7
mem8 2

利用python如何实现团队成员动态抓阄?的更多相关文章

  1. 利用Python+阿里云实现DDNS(动态域名解析)

    引子我想大家应该都很熟悉DNS了,这回在DNS前面加了一个D又变成了什么呢?这个D就是Dynamic(动态),也就是说,按照传统,一个域名所对应的IP地址应该是定死的,而使用了DDNS后,域名所对应的 ...

  2. 利用python执行shell脚本 并动态传参 及subprocess基本使用

    最近工作需求中 有遇到这个情况  在web端获取配置文件内容 及 往shell 脚本中动态传入参数 执行shell脚本这个有多种方法   最后还是选择了subprocess这个python标准库 su ...

  3. 如何利用Python网络爬虫抓取微信朋友圈的动态(上)

    今天小编给大家分享一下如何利用Python网络爬虫抓取微信朋友圈的动态信息,实际上如果单独的去爬取朋友圈的话,难度会非常大,因为微信没有提供向网易云音乐这样的API接口,所以很容易找不到门.不过不要慌 ...

  4. 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)

    前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...

  5. 利用Python获取统计自己的qq群成员信息

    利用python获取自己的qq群成员信息! 首先说明一下需要使用的工具以及技术:python3 + selenium selenium安装方法:pip install selenium 前提:获取自己 ...

  6. 利用python获取自己的qq群成员信息

    利用python获取自己的qq群成员信息! 首先说明一下需要使用的工具以及技术:python3 + selenium selenium安装方法:pip install selenium 前提:获取自己 ...

  7. 利用django打造自己的工作流平台(三):团队成员任务跟踪系统

    近期受疫情影响公司食堂不开放,为解决同事们的吃饭问题,部门需要在每周五统计下周的订餐情况:员工根据个人意愿选择是否从公司订下周的午餐和晚餐,一旦确定一周保持不变. 通常要完成一次部门内员工的订餐信息收 ...

  8. 利用python画出动态高优先权优先调度

    之前写过一个文章. 利用python画出SJF调度图 动态高度优先权优先调度 动态优先权调度算法,以就绪队列中各个进程的优先权作为进程调度的依据.各个进程的优先权在创建进程时所赋予,随着进程的推进或其 ...

  9. python 25 类的成员

    目录 1. 类的私有成员 -- __ 1.1 类的私有静态属性 1.2 类的私有方法 1.3 对象的私有方法 2. 类的其他方法 2.1 类方法 @classmethod 2.2 静态方法 @stat ...

随机推荐

  1. Hanlp1.7版本的新增功能一览

    Hanlp1.7版本在去年下半年的时候就随大快的DKH1.6版本同时发布了,截至目前1.7大版本也更新到了1.7.1了.本篇分别就1.7.0和1.7.1中新增的功能做一个简单的汇总介绍. HanLP ...

  2. tomcat接口调用时延开关

    项目中有些页面时延不稳定,需要看每次接口调用时延,怎么看,有两种方法:一种是直接去catalina.out日志中看,一种是直接去localhost_access_log日志中看,第一种需要在代码中实现 ...

  3. linux tomcat jvm调优

    修改TOMCAT_HOME/bin/catalina.sh文件: # OS specific support.  $var _must_ be set to either true or false. ...

  4. pyhdfs安装

    参考: http://blog.csdn.net/sinat_33741547/article/details/54428726 1.先更新pip,防止版本过低pip install --upgrad ...

  5. 更多FMK 的还是看万一的吧

    http://www.cnblogs.com/del/category/323943.html 记录一下, 作为目录

  6. DotNetBar创建的Ribbon、标签式多文档界面

    1.创建一个form作为主窗体,继承自:DevComponents.DotNetBar.RibbonForm 设置属性:IsMdiContainer为true 2.创建一个form,作为子窗体,也继承 ...

  7. Python NLP完整项目实战教程(1)

    一.前言 打算写一个系列的关于自然语言处理技术的文章<Python NLP完整项目实战>,本文算是系列文章的起始篇,为了能够有效集合实际应用场景,避免为了学习而学习,考虑结合一个具体的项目 ...

  8. Android之sqlite数据库版本升级和降级的处理(onUpgrade和onDowngrade)

    一.SQLite升级和降级需要考虑的细节 ①  SQLite升级: v3.0数据库版本 [onUpgrade 情况:n-1,onCreate 情况:1]                        ...

  9. Centos7在单用户模式下重置root密码

    1.启动Centos7 ,按空格让其停留在如下界面: 鼠标上下可以选择启动内核,默认选择第一个内核开机 2.按e键进入编辑模式 e 按下e键后我们可能无法看到我们需要编辑的区域,这是因为在较新版本的C ...

  10. day34进程相关

    进程1 什么是进程    进程指的是一个正在进行/运行的程序,进程是用来描述程序执行过程的虚拟概念    进程vs程序    程序:一堆代码    进程:程序的执行的过程    进程的概念起源于操作系 ...