比较范围内的值

时间:2014-04-24 07:09:40

标签: python

有两个变量'wins'和'click',每个变量的值从1100K

当'wins'是150的倍数,以及'click'是0还是1时,需要标记?

要求:迭代地想要增加两个值

 if 150<=int(wins)<=300 and 0<=int(clicks)<=1:

1 个答案:

答案 0 :(得分:2)

  

需要flag当&#34;胜利是150的倍数&#34;当&#34;点击次数为01&#34;

尝试

flag = (clicks in (0, 1) and (wins % 150) == 0)
  • clicks in (0, 1):表示点击次数为0或1
  • (wins % 150) == 0:表示wins % 150余数为零,因此胜利可以被150整除。

检查以下内容:

>>> clicks, wins = 0, 150 * 7
>>> flag = (clicks in (0, 1) and (wins % 150) == 0)
>>> flag
True
>>> clicks, wins = 2, 150 * 7
>>> flag = (clicks in (0, 1) and (wins % 150) == 0)
>>> flag
False
>>> 

注意:如果点击&#39;和&#39;风&#39;是字符串,那么您需要使用typecase int(clicks)int(wins)。在我的回答中,风和点击都是int。


修改:我试图了解您的意见和问题。以上答案可以帮助您:

  

comment-1:获胜和点击的数据类型为int:

如果winsclicksint值,则您不需要使用typecase。就像我在上面的回答中那样做。

  

评论-2:我想简单地检索说150 winsclicks = 0的记录:

实现这个逻辑非常简单:

if winds == 150 and clicks == 0:
  # code to retrieve record  

最后:

  

评论-3:将wins计数器增加为150的倍数(当wins介于150-300clicks = 0之间时应检索记录)
   4)在递增wins计数器时,我还需要递增clicks计数器以检索记录

     

e.g。当wins = [300-450]并且click = 1 retreive时,
       wins = [300-450]并点击= 2跳过

难以理解!我仍然相信你需要这样的东西:

# `num` until you wants to execute 
for _ in range(0, num):
  if clicks in (0, 1) and (wins % 150) == 0:
     # code to retrieve record
  wins += 150       

如果您只想检索点击次数为0,1的记录,我不知道您增加点击次数的原因。