当前位置: 首页 > 后端技术 > Python

有意思,用Python算出哪个星座的人最有钱

时间:2023-03-26 13:58:18 Python

标题:“有意思,用Python算出哪个星座的人最有钱!”日期:“2020-02-19”最近经常看到新闻星座,不过这个我是不信的,不过因为推的太多了,总会有几篇文章让我好奇的进去看看。然后想想,用Python写一篇星座相关的文章也不错。正好Python计算一个人的生肖特别简单,因为每个生肖的日期都是固定的。我们只需要四行代码来计算:defcal_constellation(month,day):constellation=(u'摩羯座',u'水瓶座',u'双鱼座',u'白羊座',u'金牛座',u'双子座',u'巨蟹座',u'狮子座',u'处女座',u'天秤座',u'天蝎座',u'射手座')start_day=((1,20),(2,19),(3,21),(4,21),(5,21),(6,22),(7,23),(8,23),(9,23),(10,23),(11,23),(12,23))returnconstellation[len(list(filter(lambday:y<=(month,day),start_day)))%12]把出生的月份和日期传入这个函数,就可以得到对应的星座。当然,这只是非常简单的第一步。下面,就让我们来盘点一下,2012年全球前100富豪中,哪个星座的人最多,呵呵,是不是很期待呢?1.获取数据豆瓣上有个帖子帮我们列出对应的数据,不过是文字形式:https://www.douban.com/group/topic/28671832/好在有统一的格式,我们可以使用正则表达式提取出生日期:(d+)?月?(d+)?Day也可以在Vscode中直接换成pattern,成为我们想要的元组形式:最后发现只有88条有birthmonthandday的记录,没关系,够我们用了。2.放入代码计算将之前得到的日期全部放入数组中,然后调用我们开头提到的星座计算函数。当然需要用字典来计算每个星座的出现情况:birth_day=[(1,28),(10,28),(8,30),(3,5),(3,28),(8,17),(11,3),(10,4),(7,29),(2,20),(11,1),(5,3),(8,4),(10,21),(7,7),(10,7),(10,28),(4,19),(2,14),(6,15),(8,12),(4,26),(8,21),(3,26),(1,12),(4,2),(9,9),(3,7),(2,20),(2,9),(3,28),(11,5),(4,16),(1,14),(4,12),(6,12),(9,1),(5,14),(9,21),(8,26),(2,23),(5,7),(7,24),(3,24),(9,26),(1,3),(2,24),(1,21),(7,8),(2,16),(8,16),(10,10),(9,1),(4,21),(5,3),(4,28),(8,21),(12,1),(12,14),(10,6),(1,27),(4,14),(6,4),(10,24),(5,11),(8,26),(1,1),(6,14),(8,11),(5,22),(5,10),(4,10),(5,9),(12,22),(12,11),(3,20),(3,8),(9,22),(12,19),(11,17),(9,15),(3,25),(2,7),(4,4),(4,1),(6,2),(2,13),(11,8)]defcal_constellation(月,日):星座=(u'摩羯座',u'水瓶座',u'双鱼座',u'白羊座',u'金牛座',u'双子座',u'巨蟹座',u'狮子座',u'处女座',u'天秤座',u'天蝎座',u'射手座')start_day=((1,20),(2,19),(3,21),(4,21),(5,21),(6,22),(7,23),(8,23),(9,23),(10,23),(11,23),(12,23))returnconstellation[len(list(filter(lambday:y<=(month,day),start_day)))%12]result={}对于birthday_day的出生:constel=cal_constellation(birth[0],birth[1])ifconstelnotinresult:result[constel]=0else:result[constel]+=1print(result)结果如下:{'水瓶座':7,'天蝎座':7,'处女座':8,'双鱼座':7,'白羊座':12,'狮子座':8,'天秤座':5,'金牛座':9,'巨蟹座':1,'双子座':5,'摩羯座':3,'射手座':4}按顺序排序:print(sorted(result.items(),key=lambdaitem:item[1]))结果:[('巨蟹座',1),('摩羯座',3),('射手座',4),('天秤座',5),('双子座',5),('水瓶座',7),('天蝎座',7),('双鱼座',7),('处女座',8),('狮子座',8),('金牛座',9),('白羊座',12)]白羊座惊讶达到第12名12/88=14%,这个比例相当牛皮。但是,我的巨蟹座只有1,而且是干的。难道我没有成为富翁的天赋吗??不过,大家也不要难过。我们只拿了88个富人的数据,这还不够。像这样的数据分析需要8888个富人的出生日期才能得到比较可靠的结果。这是我们文章的结尾。如果你今天想要我们的Python教程,请继续关注我们。如果对您有帮助,请点击下方的赞/观看。有什么问题可以在下方留言区留言,我们会耐心解答!Python实战宝典(pythondict.com)不只是一个合集欢迎关注公众号:Python实战宝典原文来自Python实战宝典:有意思,用Python算算哪个星座的人最有钱