查看原文
其他

您的圣诞礼物到了,请注意查收

爬虫俱乐部 Stata and Python数据分析 2022-03-15

本文作者:宁刘莹

文字编辑:钱梦璇

技术总编:张   邯

  ✨✨✨

爬虫俱乐部将于2020年1月5日至11日湖北武汉举行为期一周的Stata编程技术定制培训,此次采取初级班和高级班分批次培训。课程通过案例教学模式,旨在帮助大家在短期内掌握Stata软件编程、金融计量知识和实证分析方法,使大家熟悉Stata核心的爬虫技术,以及Stata与其他软件交互的高端技术。目前正在火热招生中~详细培训大纲及报名方式,请点击《爬虫俱乐部2020第一期Stata编程训练营开始报名啦!》或点击文末阅读原文呦~

                                                                                                      ✨✨✨

1989年,那是一个冬天,有个老人……有个程序员在阿姆斯特丹过圣诞节,为了打发无聊,他一拍大腿,决定开发一个新的脚本解释程序,作为ABC 语言的一种继承,并将其命名为:Python。

当当!21世纪10年代最后一个圣诞节终于到来了,考研er也在几天前打完了一场硬仗,忙碌的一年接近尾声,辛苦啦!

提到圣诞节,就会使人联想到圣诞老人、礼物和圣诞树,那么小编就做一次圣诞老人,送各位一棵圣诞树作为礼物好啦~

今天呢,小编来带大家用圣诞节出生的Python画一棵圣诞树,学会之后就可以用这种可爱的小技巧把快乐传递给家人朋友同事啦!

点击上方播放键,一起快乐而又充实地开启圣诞节日的一天吧!

     ● 画一颗常青树●

Merry Christmas

我们先来画一棵简单的常青树:

首先设定树的颜色为绿色,接着用字符串“*”和“|”组成树和树干:

for i in range(18): print(' '*(17-i),end='') # 先输入一定数量的空格,随着i的增大,空格数递减 for n in range(2*i-1): print('\033[32m',end='') # 后面输出的颜色为绿色 print('*',end='') print('')print(' '*15 + '\033[32m| |\033[0m')print(' '*15 + '\033[32m| |\033[0m')

结果如下:

   ● 添加装饰 ●

Merry Christmas

单调的常青树看起来总觉得缺了点什么,那么我们可以给它增添一些装饰。首先我们在树顶合适的位置放上一颗小星星:

print(' '*15 + '⭐')

接下来我们可以利用random库来给树上随机挂上一些彩灯。方法如下:

第一步,用random函数生成0-1之间的随机数,选定一个小的区间,若随机数位于该区间,就执行第二步操作;第二步,用choice函数从红、黄、蓝、紫几个颜色中随机选取,并按照第一步的随机概率来将绿色的“*”替换为彩色。

翻译成程序语言如下:

if random.random() > 0.8: print(random.choice(['\033[31m', '\033[33m', '\033[34m', '\033[35m']),end='') # 若生成的随机数大于0.8,则颜色是从“红黄蓝紫”中任意选取的else: print('\033[32m',end='') # 若随机数小于等于0.8,则颜色为绿色

这里关于字符串的颜色,书写方式如下:

“\033[”是开头部分,后面跟的31、33、34、35分别代表红、黄、蓝、紫色,“\033[0m”是结尾部分,结尾部分可以省略。使用时在开头后面写上代表相应效果的数字,需要设置多个的时候用分号“;”隔开,顺序是显示效果、字体、背景,最后加上一个“m ”。

除了字体颜色之外,背景颜色显示效果都可以设置。对照表格如下:


举两个栗子:

print('\033[31m你要输入的字符\033[0m') #仅设置字体颜色为红色

结果如下:

print('\033[0;31;43m你要输入的字符\033[0m') # 设置显示效果为默认效果、字体颜色为红色、背景色为黄色

结果如下:


● 彩色圣诞树完成 ●

Merry Christmas

    结合起来的完整程序如下:

import randomprint(' '*15 + '⭐')for i in range(18): print(' '*(17-i),end='') # 先输入一定数量的空格,随着i的增大,空格数递减 for n in range(2*i-1): if random.random() > 0.8: print(random.choice(['\033[31m', '\033[33m', '\033[34m', '\033[35m']),end='') # 若生成的随机数大于0.8,则颜色是从“红黄蓝紫”中任意选取的 else: print('\033[32m',end='') # 若随机数小于等于0.8,则颜色为绿色 print('*',end='') print('')print(' '*15 + '\033[32m| |\033[0m') # 绿色树干print(' '*15 + '\033[32m| |\033[0m')

于是,一棵五彩缤纷的圣诞树就出现啦:

最后,温馨提示,如果在把这段代码分享给朋友时想要附上一句寄语,可以用前面介绍过的字符串的颜色书写格式来呈现一句彩色的祝福哟~


 Merry Christmas

对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
       BvD数据库介绍之Oriana
        frlink:让连接更具“目的性”      
        多图“预警”(一)

Selenium的等待方式

一举拿下函数图像

BvD数据库介绍之Osiris

来!左边跟我一起画个龙在你右边画一道彩虹~

Selenium登录豆瓣

妙用正则表达式--Python中的re模块(二)

cngcode和cnaddress新鲜出炉!

数据可视化之地理图

“气功”研究哪家强

数据长、宽整型之另辟蹊径

10分钟带你走进宝藏数据库BvD

实战演练——爱婴医院中莆田系医院数据分析(一)

给你一个贴心的reshape应用

asrol命令——让你的描述性统计信息滚动起来

关于我们

微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata和python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存