YIRANNA 发表于 2021-1-17 23:55:27

请问这段代码的问题出在哪里?


import random
zzjg=0
person=int(input('人数:'))
def rs(person):   
    all1=[]
    bigmonth=
    smallmonth=
    a=1
    con=0
    month=random.randint(1,12)
    day=random.randint(1,30)
    for i in range(0,person):
      month=random.randint(1,12)
      day=random.randint(0,30)
      search_month=month
      search_day=day
      if search_month in bigmonth:
            sr=search_month*search_day
      if search_month in smallmonth and search_day==31:
            i-=1
            continue
      else :
            sr=search_month*search_day
      if search_month==2 and search_day>=28:
            i-=1
            continue
      else:
             sr=search_month*search_day
      all1.append(sr)
    all1=all1.sort()
    for i in range(len(all1)):
      if all1==all1:
            con=1
      else :
            con=0
      if i+2==len(all1):
            break
      print(str(con)+" ")
    return con
for i in range(1000):
    asdf=rs(person)
    zzjg+=asdf   
aallll=zzjg/person
print(aallll)
有关于列表的错误,不知道怎么理解

jackz007 发表于 2021-1-18 00:55:53

      你这个代码想实现什么功能?

z5560636 发表于 2021-1-18 09:14:05

没有写注释,太难了,提问时也没描述清楚,实现的功能。
但是错误提示指向for i in range(len(all1)):
大概的意思是,你的变量all1值为空。

jackz007 发表于 2021-1-18 10:07:39

         列表的 sort() 方法无返回值
      这一句
all1=all1.sort()
      改为
all1.sort()
页: [1]
查看完整版本: 请问这段代码的问题出在哪里?