知行编程网知行编程网  2022-05-03 08:00 知行编程网 隐藏边栏 |   抢沙发  3 
文章评分 0 次,平均分 0.0

最近经常看到关于星座的推送,我其实不信这个,但是由于推送得太多了,总有几篇会让我好奇地点进去看看。然后想想其实用Python写一篇星座相关的文章也不错。

正好,Python计算一个人的星座特别简单,因为每个星座的日期是固定的。我们只需要四行代码就能计算:

有趣,用Python算算哪个星座富豪最多!

把出生的月份和日期传入这个函数,就能得到对应的星座了。当然,这只是非常简单的第一步,接下来让我们计算2012全球富豪榜前一百名中,哪个星座的人最多,嘻嘻,期待吗?

1.获得数据

豆瓣上有个帖子帮我们列出了相应的数据,不过是以文本的形式:
https://www.douban.com/group/topic/28671832/

有趣,用Python算算哪个星座富豪最多!

幸好有统一的格式,我们能用正则表达式把出生日期提取出来:

(d+) ?月 ?(d+) ?日

有趣,用Python算算哪个星座富豪最多!


在Vscode中还能直接用模式替换,变成我们想要的元组形式:

有趣,用Python算算哪个星座富豪最多!


点击回车就能替换成元组形式了哦。最后会发现有出生月日的只有88条,没关系,够我们实验用的。

2.放入代码计算

将前面获得的所有日期放入数组中,然后调用我们一开始说的星座计算函数即可,当然,需要用一个字典来计算每次星座的出现:

有趣,用Python算算哪个星座富豪最多!

这里由于数据过多,我就没截上来了。有兴趣的朋友可以Python实用宝典后台回复 星座富豪计算 获取全部数据和代码。

结果如下:

{'水瓶座': 7, '天蝎座': 7, '处女座': 8, '双鱼座': 7, '白羊座': 12, '狮子座': 8, '天秤座': 5, '金牛座': 9, '巨蟹座': 1, '双子座': 5, '摩羯座': 3, '射手座': 4}

排个序吧:

<ol class="list-paddingleft-2" style="margin-left: 40px;"><li><p><span style="font-size: 12px;"><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(249, 38, 89);">print</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">(</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);">sorted</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">(</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);">result</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">.</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);">items</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">(),</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);"> key</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">=</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(249, 38, 89);">lambda</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);"> item</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">:</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(102, 217, 239);"> item</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">[</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(174, 129, 255);">1</span><span style="font-size: 12px;border-width: 0px;border-style: initial;border-color: initial;background: transparent;box-sizing: border-box;transition: all 0.5s ease-in-out 0s;color: rgb(248, 248, 242);">]))</span></span></p></li></ol>

结果:

[('巨蟹座', 1), ('摩羯座', 3), ('射手座', 4), ('天秤座', 5), ('双子座', 5), ('水瓶座', 7), ('天蝎座', 7), ('双鱼座', 7), ('处女座', 8), ('狮子座', 8), ('金牛座', 9), ('白羊座', 12)]

白羊座惊为天人达到了12位。12/88 = 14%啊,这个比例相当牛皮了。然而我的巨蟹座只有1位,枯了,难道我没有成为富豪的天赋?有趣,用Python算算哪个星座富豪最多!

不过,大家也不要伤心。我们只取了88名富豪的数据还不够多,像这样的数据分析大概要8888名富豪的出生日期才能得到一个比较靠谱的结果。有兴趣的小伙伴也可以试一下,看看你有没有成为富豪的潜质!

<p style="margin-right: 8px;margin-left: 8px;"><span style="font-size: 15px;"><strong>近期热门:</strong><br  /></span></p><p style="margin: 10px 8px 5px;padding-right: 0em;padding-left: 0em;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;white-space: normal;widows: 1;word-spacing: 10px;letter-spacing: 1.5px;line-height: normal;"><span style="color: rgb(0, 122, 170);font-size: 15px;">● </span><span style="color: rgb(0, 122, 170);font-size: 15px;text-decoration: underline;">我的神!用Python竟然还能做一个文字套娃</span></p><p style="margin: 10px 8px 5px;padding-right: 0em;padding-left: 0em;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;white-space: normal;widows: 1;word-spacing: 10px;letter-spacing: 1.5px;line-height: normal;">● 我珍藏的一些好的Python代码,技巧|上篇</p><p style="margin: 10px 8px 5px;padding-right: 0em;padding-left: 0em;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;white-space: normal;widows: 1;word-spacing: 10px;letter-spacing: 1.5px;line-height: normal;"><span style="color: rgb(0, 122, 170);font-size: 15px;">● <span style="text-decoration: underline;">爬取300本Python书籍,用Python告诉你哪家强?</span></span></p><p style="margin: 10px 8px 5px;padding-right: 0em;padding-left: 0em;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;white-space: normal;widows: 1;word-spacing: 10px;letter-spacing: 1.5px;line-height: normal;"><span style="color: rgb(0, 122, 170);font-size: 15px;">● </span><span style="color: rgb(0, 122, 170);font-size: 15px;text-decoration: underline;">卧槽!Pdf转Word用Python轻松搞定!</span></p><p style="margin: 10px 8px 5px;padding-right: 0em;padding-left: 0em;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;white-space: normal;widows: 1;word-spacing: 10px;letter-spacing: 1.5px;line-height: normal;"><span style="font-size: 15px;"><span style="color: rgb(0, 122, 170);">● </span><span style="color: rgb(0, 122, 170);text-decoration: underline;">我打赌,学会这6招,谁再敢笑你的Python程序慢!</span></span></p>


点击阅读原文,去菜鸟B站大本营

本篇文章来源于: 菜鸟学Python

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享