查看原文
其他

基于王者荣耀的Python3入门文档

2018-01-06 郑开州 Python爱好者社区

作者:郑开州

知性而淫荡,神秘又开放


写在前面

 

1、从R社区转到Python一小段时间,这个文档本来是用于公司内部培训的,因为我们公司的小伙伴都喜欢王者荣耀,所以就选了一个贴近生活的内容制作学习文档。


2、 因为刚转Python,并没有找到Python中类似R中的Rmarkdown编辑方式,所以返回结果以图片的形式展示。


3、 文档基于Python3,运行环境为jupyter。每个例子都有源码,可以复制粘贴。如果引号粘贴到Python环境中变成了中文状态,请切换输入法到英文状态,再复制粘贴。

 

一、 基础操作


1、 入门语句

print(“欢迎来到召唤师峡谷!”)



2、 使用变量

msg="欢迎来到召唤师峡谷!" print(msg)


注意:变量名称只能包含以下三种:数字、字母、下划线。数字不能位于变量的首位。


3、 字符串大小写变换(仅针对英文)

name="wangzherongyao" print(name.title())  #首字母大写 print(name.upper())  #全部字母大写 print(name.lower())  #全部字母小写

注意:变量.方法()是常用的格式,相当于是R语言中的函数(变量)


4、 合并(拼接)字符串

first_name="郑" last_name="开州" full_name=first_name+" "+last_name print(full_name) print("尊敬的召唤师:"+full_name+",欢迎来到召唤师峡谷!")

注意:变量内容拼接可以直接使用+号,相当于是Excel中的&符号


5、 制表符和换行符的使用

print("欢迎来到召唤师峡谷!") print("\t欢迎来到召唤师峡谷!")  #文本向后缩进一个单位 print("\n欢迎来到召唤师峡谷!")  #文本换行

注意:制表符和换行符是在文本引号之内


6、 删除字符串两端的空白

msg="努力有用的话还要天才干甚?"  #文本前后有空格 print(msg) msg=msg.strip()    #移除了变量msg两端的空格 print(msg)


7、 数字变量的正确文本显示

num=2 msg=("尊敬的召唤师,您在这句对战中的综合评分位于第"+str(num)+"位!") print(msg)

注意:num里面存储的是数字,在打印的时候不能直接引用数字,需要将其转化为文本,使用“+”进行拼接的时候,拼接的各个内容的类型要相同


二、 列表元素基础


现在进入游戏,我们来观察一下自己的队友。通常使用列表这种格式来存储平行的元素。


1、 最基本的列表

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes)

注意:列表使用的标识符是[ ],相当于是R语言中的向量c(“李白”,”杨戬”,”孙悟空”)


2、 访问列表中的元素

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) print(heroes[0]) print(heroes[1])

注意:通过变量后面的[]来制定元素的位置。python列表元素的起始值是0,变量[0]相当于是R语言中的变量[1]


3、 修改列表元素


你的队友马花腾开局选了个安其拉,但是根据以往的经验,他的安其拉太菜了。队友建议换成狄仁杰。

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) heroes[0]="狄仁杰" print(heroes)

注意:python列表元素的起始值是0


4、 在列表末尾新增加元素


正准备开黑的时候,你有一个队友他男朋友给他打电话了,4个人已经选好英雄了,他姗姗来迟选了兰陵王。

heroes=["安其拉","李白","杨戬","貂蝉"] print(heroes) heroes.append("兰陵王") print(heroes)

注意:append方法只能在列表的最后添加一个元素


5、 在列表中指定位置插入元素

姗姗来迟的是你们五人投小队的队长,队长必须位于第一位。

heroes=["安其拉","李白","杨戬","貂蝉"] heroes.insert(0,"兰陵王") print(heroes)

注意:insert方法有两个参数,inerst(a,b),a代表的是插入的位置,b代表插入的内容


6、 从列表中删除元素


① 概念删除


在另一个平行世界,你的队友马花腾不顾众人反对,一意孤行选择了玩的贼菜的安其拉。你们决定把安其拉踢出队伍,并且4打5取得了胜利!

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) del heroes[0] print(heroes)

注意:del 和之前的inert和appand方法都不一样,不是变量.方法()格式,切记


② 可调用删除


新开一局,你的队友马花腾依旧执迷不悟选择了安其拉,出乎意料,这局他表现不错。但是天善社区梁总选的孙悟空掉线了。依旧是4打5,取得了胜利!!

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) tail=heroes.pop() print(heroes) print(tail)

注意:pop方法从列表的最后一个元素删除,并且可以将删除的值可以存储在一个变量中,以便后期调


③ 定值删除

梁总掉线之后,意犹未尽,再开一局。路人加入比赛,路人选了后羿:一抹利箭先到,随后弓折人亡。惨不忍睹,你们决定把后羿踢出队伍。

heroes=["安其拉","李白","杨戬","后羿","貂蝉"] print(heroes) heroes.remove("后羿") print(heroes)

注意:remove方法是删除特定值元素,并不需要知道元素的位置


7、 列表排序


① 概念排序


马花腾的安其拉玩的太菜,不能够胜任队长的位置。于是大家决定按照笔画重新排战位。

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] heroes.sort() print(heroes)

注意:sort方法进行的排序是不可逆的,不能回到原来的顺序


② 反向排序


酸菜鱼馆子的刘翠花表示不服:我貂蝉强无敌,要排在第一位,应该用反向排序

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] heroes.sort(reverse=True) print(heroes)

注意:只需要在sort方法中加入reverse=True就可以进行反向排序


③ 临时排序


队友争吵不休,最后互相妥协。马花腾的安其拉依旧是队长,临时选定代理队长

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) print(sorted(heroes)) print(heroes)

注意:临时排序sorted是一个函数,不是变量.方法()格式,切记


8、 反向排列列表元素


这一个不知道怎么编了。凑合一下吧 -。-

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] print(heroes) heroes.reverse() print(heroes)

注意:反向排列≠反向排序,仅仅只是列车的掉头行为,头作尾,尾作头


9、 计算列表中元素的计数项

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] len(heroes)

 

三、 列表的进一步操作


1、 遍历整个列表

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] for a in heroes:    print("您的队伍中有此英雄:"+a)

注意:这里需要注意缩进,另外for循环需要一个冒号


2、 在循环中加入一些废话

heroes=["安其拉","李白","杨戬","貂蝉","孙悟空"] for a in heroes:    print(a+"是一个十分优秀的英雄!"+"\n")

注意:列表不可以直接和其他字符串打印,但是遍历之后是可以和其他字符串打印的


3、 数字列表


① 使用range函数

for a in range(1,5):    print(a)

注意:我们看到的打印结果只有4行,因为range(a,b,c)函数的三个参数分别为:a(起始值),b(终止值),c(步长),生成的数字会忽略掉参数b


② 创建一个最简单的数字列表

num=list(range(1,6)) print(num)

注意:通过list()函数,将range(1,6)生成的数字组成了一个列表


③ 从外部添加数字到数字列表(计算平方值)

pingfangji=[] for shuzi in range(1,11):    pingfang=shuzi**2    pingfangji.append(pingfang) print(pingfangji)

注意:缩进的位置不一样的话,返回的结果完全不一致。对比以下


四、 总结


后面还有一部分文档,考虑到阅读的友善度,暂时就先放这么些。后面还会有更新。希望能对大家的学习有所帮助。

 

大家有意见和批评也可以联系开州,邮箱地址:kaizhou_0320@163.com。

 

感谢阅读!

Python爱好者社区历史文章大合集

Python爱好者社区历史文章列表(每周append更新一次)

福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“课程”即可获取:

小编的Python入门视频课程!!!

崔老师爬虫实战案例免费学习视频。

丘老师数据科学入门指导免费学习视频。

陈老师数据分析报告制作免费学习视频。

玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。

丘老师Python网络爬虫实战免费学习视频。


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

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