纯粹是为了玩 = - = python 随机数加信号量

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
import sys
import signal

list_red = [x for x in range(1, 34)]
list_blue = [x for x in range(1, 17)]
xlist = []
x = 0
lock = False

def get_number(signalnum, get_number):
  # print signalnum
  # print get_number
  lock = True
  print "lock"
  print x
  if 6 > len(xlist):
    list_red.remove(x)
  else:
    list_blue.remove(x)
  xlist.append(x)
  lock = False
  print "unlock"

def check_lock():
  if True == True:
    while lock:
      pass
  else:
    pass

if __name__ == "__main__":
  # print list_red
  # print list_blue

  # 直接产生随机数 2组
  for i in range(2):
    xrl = sorted(random.sample(list_red, 6))
    xbl = sorted(random.sample(list_blue, 1))
    print xrl,xbl

  # # 当按键ctrl+\会选取一个数字
  signal.signal(signal.SIGQUIT,get_number)  ## ctrl+\ 信号调用get_number方法,
  # # 先从红球选
  while 6 > len(xlist):
    for i in list_red:
      check_lock()
      x = i
  # # 再从篮球选
  while 7 > len(xlist):
    for i in list_blue:
      check_lock()
      x = i
  print "Selected:",xlist
  xb = xlist.pop(-1)
  print "sorted:",sorted(xlist),xb
  print "Legacy red:",list_red
  print "Legacy_blue",list_blue
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值