ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python学习总结1(基本语法)

2021-02-25 21:29:39  阅读:223  来源: 互联网

标签:turtle 总结 画笔 python eg 语法 TempStr font


本文全部内容为本人跟随mooc北京理工大学pyhon课程的总结,若有错误,请及时反馈

 

文章目录

前言

一、人生苦短,我用python 

二、turtle库的使用(绘图体系)

1.介绍

2.蟒蛇图形绘制

3.库引用(扩充python程序功能的方式)

4.turtle函数介绍

总结



前言

首先说说我为什么要学习python吧,首先是受到了网络上无脑python吹的影响以及很多教育机构的影响,觉得学好了python,以后写代码就可以把

python作为第一语言,但学完之后发现并不是想象中的那样,python有很强大的功能和简便的语法,这是没有异议的,在爬虫和人工智能和机器学习上

python也可以说领先了其他语言,但是对于我这样一个普通一本的学生,可以说如果将来没有机会考研到985大学,基本也就告别了人工智能领域了,至于

爬虫.......最近很火的面向监狱编程,基本都是这个方向出来的,python很强大,但是综合就业和许多角度的分析,python作为第二语言其实是更好的选择,

java仍然是计算机就业的主流方向,话不多说,进入正言。


 

一、人生苦短,我用python 

#TempConvert.py
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in ['F', 'f']:
    C = (eval(TempStr[0:-1]) - 32)/1.8
    print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C', 'c']:
    F = 1.8*eval(TempStr[0:-1]) + 32
    print("转换后的温度是{:.2f}F".format(F))
else:
    print("输入格式错误")
  1. 以这一段代码进入正文的讲解,python和c不同,python许多的语法都体现在了缩进上,可以说python是更加注重缩进的语言,第一行也就是我们在一段小程序中

的注释,第二行就是输入,从键盘上输入赋给赋值号前面的内容,这里要说明python的命名规则:python和c在命名上基本一致,大小写字母,数字,下划线和汉字字符

及组合,但是重点注意!首字符不能是数字,命名不能与保留字相同,大小写也需要区别,且变量名中间不能有空格。

      2.在数据类型上python不允许存在语法歧义,eg. "123"表示文本字符串123,123则表示数字123

      3.序号:序号可以分为正向递增序号和反向递减序号

eg.

-10 -9 -8 -7 -6 -5 -4 -3 -2 -1
 向  来 缘 浅  , 奈 何 情 深  .
 0   1  2  3  4  5  6  7  8  9  

       4.字符串的使用 (input函数获取的均为字符串类型

  • 使用[ ]获取字符串中一个或多个字符

      索引:返回字符串中单个字符     调用格式:<字符串>[M]

      eg. TempStr[-1]

  • 切片:返回字符串中的一段字符子串     调用格式:<字符串>[M:N]

      eg.TempStr[0:-1]

注:1. [1:3]为取出第一个字符,第二个,但不到第三个

       2. [0:-1]为从0开始,但不到最后一个字符

       3.切片也可写为[0:]表示从第一个字符开始,到最后一个字符

 

      5.列表类型: [   ]表示,逗号隔开    eg.['F','f']表示两个元素'F'和'f'

  • 使用保留字in判断一个元素是否在列表中
  • TempStr[-1] in ['C','c']判断前者是否与列表中某个元素相同,相同则返回true

 

      6.分支语句(有判断条件决定程序运行方向的语句)

if、elif、else构成条件判断的分支语句       注:三者后跟判断条件后面均要跟冒号,否则会报错

      7.print的使用

print函数的格式化:

print("转换后的温度是{:.2f}C".format(c))

{}表示槽,后续变量会填充到槽中

8.eval使用

按照我的理解,eval就是为内部脱衣服,比如input获得的为字符串形式无法直接进行加减法,通过eval脱掉""

它就变成了数字类型

              


二、turtle库的使用(绘图体系)

1.介绍

首先对库的概念叙说一下,库就相当于已经制作好的函数打包好了后可以直接被调用,当然许多第三方库也需要下载后才能使用

python计算生态=标准库+第三方库

turtle画图体系,就像一个海龟在画板上移动,所以turtle也叫作海龟画图体系,海龟初始位置为(0,0),正视画板右方

2.蟒蛇图形绘制

#PythonDraw.py
import turtle
turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
    turtle.circle(40, 80)
    turtle.circle(-40, 80)
turtle.circle(40, 80/2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2/3)
turtle.done()

3.库引用(扩充python程序功能的方式)

1.使用一个库之前,需要用import引用

eg.import turtle

2.如果觉得每次使用函数都需要在前面加一个turtle.调用很麻烦,我们可以为库起小名,甚至可以省略

eg.from turtle import *(忽略库名)

经过这样一句语句后,我们再次调用turtle库时就可以直接调用函数啦

eg.import turtle as xh(起小名为xh)

经过这样一句语句后库名可以用小名替代

4.turtle函数介绍

(1)    画笔运动命令

命令

说明

turtle.forward(distance)

向当前画笔方向移动distance像素长度

turtle.backward(distance)

向当前画笔相反方向移动distance像素长度

turtle.right(degree)

顺时针移动degree°

turtle.left(degree)

逆时针移动degree°

turtle.pendown()

移动时绘制图形,缺省时也为绘制

turtle.goto(x,y)

将画笔移动到坐标为x,y的位置

turtle.penup()

提起笔移动,不绘制图形,用于另起一个地方绘制

turtle.circle()

画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

setx( )

将当前x轴移动到指定位置

sety( )

将当前y轴移动到指定位置

setheading(angle)

设置当前朝向为angle角度

home()

设置当前画笔位置为原点,朝向东。

dot(r)

绘制一个指定直径和颜色的圆点

 

(2)     画笔控制命令

turtle.fillcolor(colorstring)

绘制图形的填充颜色

turtle.color(color1, color2)

同时设置pencolor=color1, fillcolor=color2

turtle.filling()

返回当前是否在填充状态

turtle.begin_fill()

准备开始填充图形

turtle.end_fill()

填充完成

turtle.hideturtle()

隐藏画笔的turtle形状

turtle.showturtle()

显示画笔的turtle形状

(3)    全局控制命令

turtle.clear()

清空turtle窗口,但是turtle的位置和状态不会改变

turtle.reset()

清空窗口,重置turtle状态为起始状态

turtle.undo()

撤销上一个turtle动作

turtle.isvisible()

返回当前turtle是否可见

stamp()

复制当前图形

turtle.write(s [,font=("font-name",font_size,"font_type")])

写文本,s为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项

 


总结

写一句我最喜欢的一句话互勉吧

自强不息怀壮志以长行,厚德载物携梦想而扶凌

标签:turtle,总结,画笔,python,eg,语法,TempStr,font
来源: https://blog.csdn.net/qq_42862019/article/details/114078931

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有