版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2.1Python语言的编程规范
2.2常量、变量与对象
2.3数据类型
2.4Python的语句概述
2.5输入/输出函数
2.6turtle库
第2章Python的基本语法概述考纲考点程序的基本语法元素:程序的格式框架、缩进、
注释、变量、命名、保留字、数据类型、赋值语
句、引用语句、控制语句基本输入输出函数:input()、eval()、print()Turtle库知识导图2.1Python语言的编程规范2.1.1代码缩进
Python语言采用严格的“缩进”来表明程序的格式框架。缩进指每一行代码开始前的空白区域,用来表示代码之间的包含和层次关系。
1个缩进
=4个空格缩进是Python语言中表明程序框架的唯一手段缩进
当表达分支、循环、函数、类等程序含义时,在if、while、for、def、class等保留字所在完整语句后通过英文冒号(:)结尾,表示缩进的开始。
python程序是依靠代码块的缩进来体现代码之间的逻辑关系的,缩进结束就表示一个代码块结束了。
同一个级别的代码块的缩进量必须相同例2-1编程,根据输入的年份和月份计算出该月的天数。代码如下:year=int(input("请输入年份:"))month=int(input("请输入月份:"))ifmonth==2:ifyear%4==0andyear%100!=0oryear%400==0:days=29else:days=28elifmonthin[4,6,9,11]:days=30else:days=31print("本月天数是:",days)2.1.2注释注释是代码中的辅助性文字,会被编译或解释器略去,不被计算机执行,一般用于程序员对代码的说明。Python语言采用#表示一行注释的开始,ꢀ
ꢀ注释可以在一行中任意位置通过“#”开始,其后的本行内容被当作注释,而之前的内容仍然是python执行程序的一部分。注释
多行注释可以用三个单引号(''')括起来。ꢀ
ꢀꢀ
ꢀ2.1.3续行ꢀ
ꢀ续行符可以提高代码的可读性和可维护性。当一行代码过长时,不仅会导致代码难以阅读和修改,还会影响代码的性能。可以使用反斜杠(\)来实现代码的续行
还可以使用括号续行。Python会自动将这几行代码当作一行代码来处理,文件方式和交互方式下均可使用。ꢀ
ꢀꢀ
ꢀ2.1.4标识符的命名ꢀ
ꢀ标识符是用户编程时使用的名字。对标识符命名是编程语言规则的一部分,它规定了如何为变量、函数、类、模块等编程元素取名字。一般采用字母、数字、下划线,甚至汉字等字符及其组合进行命名,但要注意的是,首字符不能是数字,不允许使用空格和特殊字符(如感叹号、问号、冒号等)例如:变量名my_variable,函数名_my_function,类名MyClass等等
标识符对大小写敏感,即china和China是两个不同的名字;对标识符命名还需要注意的是不能与python的保留字相同。ꢀ
ꢀꢀ
ꢀꢀ
ꢀ续行符可以提高代码的可读性和可维护性。当一行代码过长时,不仅会导致代码难以阅读和修改,还会影响代码的性能。可以使用反斜杠(\)来实现代码的续行
保留字,也称为关键字,指被编程语言内部定义并保留使用的标识符。程序员编写程序不能定义与保留字相同的标识符。
每种程序设计语言都有一套保留字,保留字一般用来构成程序整体框架、表达关键值和具有结构性的复杂语义等。掌握一门编程语言首先要熟记其所对应的保留字。2.1.5保留字
Python3.x保留字列表
(35个)2.2常量、变量与对象2.2.1常量所谓常量,一般是指不需要改变也不能改变的字面值ꢀ
ꢀ在python中,还会出现一类符号常量,一般用大写字母来表示例如一个数字5,一个字符串“hello!”,一个列表[1,2,3],等等。例如:MAX_VALUE、PI
Python中并没有真正的符号常量,由于Python中没有强制符号常量类型的定义方式,这些所谓的符号常量类型只是程序员约定俗成的表示方式而已,在实际操作中,其本质还是变量。ꢀ
ꢀꢀ
ꢀ>>>MAX_VALUE=100>>>print(MAX_VALUE)100>>>MAX_VALUE=200>>>print(MAX_VALUE)2002.2.2变量
变量是保存和表示数据值的一种语法元素,在程序中十分常见。顾名思义,变量的值是可以改变的,能够通过赋值(使用等号=表达)方式被修改,例如(注意空格):ꢀ>>>x=5>>>x5>>>x="中国">>>x'中国'2.2.3对象每个对象由:标识(identity),类型(type),值(value)组成在Python中一切皆对象。值表示对象所存储的数据的信息。使用print(obj)可以直接打印出值标识用于唯一标识对象,通常对应于对象在计算机内存中的地址。使用内置函数id(obj)可返回对象的标识类型用于表示对象存储的“数据”类型。可以限制对象的取值范围以及可执行的操作。使用内置函数type(obj)可返回对象的所属类型其本质:一个内存块,拥有特定的值,支持特定类型的相关操作特别说明:
在python中,变量其实是对象的引用,因为变量存储的是对象的地址,变量通过地址引用了“对象”。变量位于:栈内存对象位于:堆内存对象没有被引用的时候,会被回收到垃圾堆栈内存堆内存3xy1985553168>>>x=3>>>id(x)#查看x的引用地址1985553168>>>id(3)#查看对象3的地址1985553168
在Python中,对象可以分为可变对象和不可变对象。ꢀ
ꢀꢀ
ꢀ不可变对象是指该对象所指向的内存中的值不能被改变。当改变某个变量时,由于其所指的值不能被改变,因此会开辟一个新的地址,变量再指向这个新的地址。在Python中,数值类型(int和float)、字符串(str)和元组(tuple)都是不可变对象。不可变对象栈内存堆内存3x198555316841985553200>>>x=3>>>id(x)1985553168>>>id(3)1985553168>>>x=x+1>>>id(x)1985553200>>>id(3)1985553168>>>id(4)1985553200ꢀ
ꢀꢀ
ꢀ可变对象是指该对象所指向的内存中的值可以被改变。变量(准确的说是引用)改变后,实际上是其所指的值直接发生改变,并没有发生复制行为,也没有开辟出新地址,通俗点说就是原地改变。在Python中,列表(list)、字典(dict)和集合(set)是可变对象。可变对象栈内存堆内存1x3063083889992234>>>x=[1,2,3]#x为列表>>>id(x)#查看x的引用地址3063083889992>>>x.append(4)#给x增加元素4>>>x[1,2,3,4]#此时x值发生变化>>>id(x)#x的引用地址没变3063083889992
Python中,可变对象和不可变对象其值都能够被引用,就是都可以做“读”操作。但是“写”操作只能对可变对象进行。ꢀ
ꢀꢀ
ꢀ2.3数据类型
Python语言支持多种数据类型,最简单的包括数字类型、字符串类型,略微复杂的包括元组类型、集合类型、列表类型、字典类型等。2.3.1数字类型
表
示
数
字
或
数
值
的
数
据
类
型
称
为
数
字
类
型
,Python语言提供3种数字类型:整数、浮点数和复数,分别对应数学中的整数、实数和复数。整数
一个整数值可以表示为十进制、十六进制、八进制和二进制等不同进制形式。在Python3中,整数没有大小限制,可以是任意大小的整数。十进制:
1010十六进制:0x3F2八进制:
0o1762二进制:
0b001111110010浮点数
一个浮点数可以表示为带有小数点的一般形式,也可以采用科学计数法表示,只有十进制形式。例如:浮点数123.456,两种表示方式如下:一般形式:123.456科学计数法:
1.23456e2整数与浮点数混合运算时,表达式自动转成浮点数复数
Python中的复数由实部和虚部组成,可以使用a+bj或者complex(a,b)表示,其中a和b都是实数,且a称为复数的实部,b称为复数的虚部。可以使用j或J表示复数的虚部>>>x=5+6j>>>y=7+8j>>>x+y(12+14j)>>>x*y(-13+82j)2.3.2字符串类型
Python语言中,字符串类型数据主要用于处理一些文本类信息,有字符串类型的常量和变量,单个字符也是字符串。
Python使用单引号、双引号、三个单引号,三个双引号作为定界符表示字符串,且不同的定界符之间可以相互嵌套使用>>>x="456">>>type(x)<class'str'>>>>x='happy'>>>type(x)<class'str'>>>>x='''Hesaid,"HappyBirthday"'''#为了输出双引号,引号嵌套使用>>>x'Hesaid,"HappyBirthday"'2.3.3布尔类型布尔类型数据只有两个值:True和False。布尔类型的特点是占用内存空间小,使用灵活,常用于if语句、循环语句、条件表达式中,进行逻辑判断和条件判断布尔类型可以与其他数据类型进行转换,如与整数类型(int)进行转换时,True对应1,False对应0。>>>TrueandTrue#与运算True>>>TrueandFalseFalse>>>FalseandTrueFalse>>>TrueorTrue#或运算True>>>TrueorFalseTrue>>>FalseorTrueTrue>>>notTrue#非运算False>>>notFalseTrue>>>3*True#布尔值可以直接参与整数运算3>>>3*False0and是逻辑与运算,or是逻辑或运算,not是逻辑非运算2.3.4组合数据类型
在Python中,组合数据类型是指可以包含不同类型的元素的数据结构。Python中的组合数据类型主要包括列表(list)、元组(tuple)、字典(dictionary)和集合(set)。列表列表是一种有序的元素集合,可以随时添加或删除其中的元素。列表中的元素可以是任何类型,例如字符串、整数、浮点数、其他列表等。列表使用“[]”作为定界符。>>>x=[36,"happy",3.14]>>>type(x)<class'list'>元组元组与列表类似,是一个有序的元素集合,但元组是不可变对象,一旦创建就不能更改。元组中的元素也可以是任何类型。元组使用“()”作为定界符。>>>x=(56,"happy",[3,5,7])>>>x(56,'happy',[3,5,7])>>>type(x)<class'tuple'>字典字典是无序的键值对集合。字典中的元素以键值对的形式存在,你可以通过键来访问其对应的值。字典中的键必须是唯一的。值可以是任何类型,包括列表、元组、字典等。字典使用“{}”作为定界符。>>>x={'name':'John','age':18,'hobbies':['fishing','reading']}>>>x{'name':'John','hobbies':['fishing','reading'],'age':18}>>>type(x)<class'dict'>集合集合是一个无序的唯一元素集合。集合中的元素都是唯一的,不会重复。集合支持一些数学集合的操作,如并集、交集、差集等。集合中的元素只能是不可变对象。集合也使用“{}”作为定界符。>>>x={3.14,4,'abc',(4,6)}>>>x{3.14,4,(4,6),'abc'}>>>type(x)<class'set'>2.4Python的语句概述
2.4.1表达式
产生或计算新数据值的代码片段称为表达式。表达式类似数学中的计算公式,以表达单一功能为目的,运算后产生运算结果,运算结果的类型由操作符或运算符决定。
表达式一般由数据和操作符等构成,这是构成Python语句的重要部分,单个常量或变量可以看作最简单的表达式。现在主要区别一下表达式和语句,示例代码如下:>>>3*26>>>x=3*2>>>x62.4.2赋值语句
Python语言中,=表示“赋值”,即将等号右侧的值计算后将结果值赋给左侧变量,包含等号(=)的语句称为“赋值语句”<变量>=<表达式>示例代码如下:>>>x=99#给变量x赋值为整数值99>>>y=3.33#给变量y赋值为浮点数3.33>>>z="你好,中国!"#给变量z赋值为字符串"你好,中国!"多重赋值同时将多个变量的值赋给多个表达式>>>x,y,z=3,7.8,"hi"#多重赋值>>>x3>>>y7.8>>>z'hi'>>>x,y=y,x#多重赋值,交换x,y的值>>>x7.8>>>y3增强赋值使用+=、-=、*=、/=等运算符对变量进行增强赋值。>>>x,y,z=1,2,3>>>x+=10#等价于x=x+10>>>y-=5#等价于y=y-5>>>z*=2#等价于z=z*2链式赋值可以将同一个值赋给多个变量。>>>x=y=z=3#链式赋值>>>x3>>>y3>>>z3解构赋值将一个元组或列表的值解包并赋给多个变量。>>>x,y=[1,2]#将列表[1,2]解包,并将1赋给x,2赋给y>>>x1>>>y22.4.3import语句在python默认的安装中仅包含了核心模块,启动python时也只加载了核心模块,还有一些标准库是启动时没装入内存的,这样做的好处是可以减小程序运行的压力。所以,当用户需要使用标准库和第三方库的时候,就会有一步非常重要的第一步操作,即导入库,导入使用的是import语句。下面介绍三种格式的导入的方法。方法1这种格式的导入语句,在使用的时候需要在模块对象的前面加上模块名作为前缀,必须以“模块名.对象“的方式进行访问。如果模块名字很长的话,可以为导入的模块设置一个别名,使用“别名.对象名”进行访问。
格式:import模块名[as别名]importmath#导入标准库mathresult=math.sqrt(16)#计算16的平方根print(result)#输出结果importrandomasr#导入标准库random,并设置别名rx=r.random()#获得[0.0,1.0)区间的随机小数方法2这种格式的导入语句,仅导入明确指定的对象,也可以为导入的对象确定一个别名。此导入方式可以减少查询次数,提高访问速度,同时也可以减少输入量,不需要使用模块名为前缀。
格式:from模块名import对象名[as别名]>>>frommathimportsin#导入标准库math中的指定对象sin>>>sin(3.14)0.0015926529164868282>>>cos(3.14)#math库中的cos对象并没导入,出错Traceback(mostrecentcalllast):File"<pyshell#100>",line1,in<module>cos(3.14)NameError:name'cos'isnotdefined>>>frommathimportcosasf#导入cos,并起别名为f>>>f(3.14)-0.9999987317275395方法3是方法2的极端情况,可以一次导入模块中所有对象。一般不推荐使用,一方面,会降低代码的可读性,有时很难区分自定义函数和从模块中导入的函数;另一方面,会导致命名空间的混乱。如果多个模块中有同名的对象,只有最后一个导入的模块中的对象是有效的。
格式:from模块名import*>>>frommathimport*#导入math库>>>gcd(12,24)#求最大公约数12>>>pi#常数ℼ3.141592653589793>>>log2(8)#计算以2为底的8的对数3.0>>>sin(4)#求sin函数值-0.75680249530792822.4.4控制语句
除了赋值语句外,Python程序还包括一些其他的语句类型,例如,分支语句和循环语句等。更多的分支和循环内容将在第4章介绍。这里仅简要介绍这两类语句的基本使用。ꢀꢀ分支语句if
if语句,是一种选择结构,有单分支、二分支和多分支,其作用是根据判断条件选择程序执行路径。示例代码如下:x=10ifx>5:print("x大于5")else:print("x不大于5")ꢀꢀfor语句
for语句,是一种循环结构,其作用是根据判断条件确定一段程序是否需要反复执行。示例代码如下:>>>foriinrange(10): print(i,end=",")0,1,2,3,4,5,6,7,8,9,2.5输入/输出函数2.5.1input()函数
获得用户输入之前,input()函数可以包含一些提示性文字<变量>=input(<提示性文字>)ꢀ
不论用户输入什么内容,input()一律作为字符串对待,必要时可以使用内置函数int()、float()或eval()对用户输入的内容进行类型转换>>>x=input("请输入数字:")请输入数字:3.14>>>x'3.14'#3.14两边有单引号>>>type(x)<class'str'>eval()
函数
eval(<字符串>)函数是Python语言中一个十分重要的函数,它能够以Python表达式的方式解析并执行字符串,将返回结果输出>>>aꢀ=ꢀeval("1.2ꢀ+ꢀ3.4")>>>print(a)4.6ꢀ
eval()函数经常和input()函数一起使用,用来获取用户输入的数字,使用方式如下:<变量>=eval(input(<提示性文字>))ꢀ>>>x=eval(input("请输入数字:"))请输入数字:789>>>type(x)<class'int'>>>>x=eval(input("请输入数字:"))请输入数字:7.89>>>type(x)<class'float'>2.5.2print()函数ꢀ内置函数print()用于输出信息,其输出的信息既可以到标准控制台(例如:显示器,打印机等设备)也可以到指定的文件。使用格式如下:
print(value1,value2,...,sep='',end='\n',file=sys.stdout,flush=False)参数说明1ꢀvalue1,value2,...:参数列表,要打印输出的值,可以是多个,用逗号分隔。示例代码如下:>>>a=35>>>print(a)#参数为变量35>>>print("好好学习,报效祖国")#参数为字符串常量好好学习,报效祖国>>>print(["g","o","o","d"])#参数为列表['g','o','o','d']>>>print(35.6)#参数为浮点数35.6参数说明1ꢀ参数既可以是字符串、数据值也可以是变量。当参数为变量的时候,运行结果是变量的值;当参数为字符串的时候,运行结果是不带引号的可打印字符;当参数中包含双引号字符串时,如上例中的列表“["g","o","o","d"]”,其输出结果采用单引号形式“['g','o','o','d']”;参数为其他数据类型时,直接输出表示。参数说明1ꢀprint()函数可以有多个参数,各参数之间用逗号分隔,其运行输出结果之间用一个空格分隔。示例代码如下:>>>b=10.25>>>print(b,b+1,b*2,1.25)#有四个参数,用逗号分隔10.2511.2520.51.25>>>print("富强","民主","文明")富强
民主
文明参数说明2ꢀsep='':可选参数,指定多个值之间的分隔符字符。如果省略不写,则默认为一个空格。示例代码如下:>>>print("富强","民主","文明",sep="**")富强**民主**文明参数说明3ꢀend='\n':可选参数,指定打印输出后的结束字符。如果省略不写,则默认为一个换行符。示例代码如下:>>>foriinrange(3):print(i)012>>>foriinrange(3): print(i,end='&')0&1&2&参数说明4ꢀfile=sys.stdout:可选参数,指定输出文件对象。如果省略不写,则默认为标准输出,即输出结果到屏幕或者打印机。示例代码如下:>>>withopen(r"d:\output.txt","w")asf: print("床前明月光",file=f)当执行完以上语句内容后,print()函数的file参数,将输出结果"床前明月光"写到一个名为output.txt的文件中参数说明5ꢀflush=False:可选参数,指定是否刷新输出缓冲区。如果省略不写,则默认为False。示例代码如下:>>>print("Hi,Mike!",flush=True)Hi,Mike!这个例子中,我们使用了flush=True参数,确保输出值立即显示在控制台上,一般使用中用默认方式即可。因为这个参数涉及到缓冲区的刷新,需要学到更高阶才能了解其具体区别,此处只做一般性了解2.6Turtle库
turtle(海龟)是Python重要的标准库之一,它能够进行基本的图形绘制。
turtle库绘制图形有一个基本框架:一个小海龟在坐标系中爬行,其爬行轨迹形成了绘制图形。对于小海龟来说,有“前进”、“后退”、“旋转”等爬行行为,对坐标系的探索也通过“前进方向”、“后退方向”、“左侧方向”和“右侧方向”等小海龟自身角度方位来完成。2.6.1turtle的坐标系ꢀꢀꢀꢀ在Python的turtle库中,我们主要使用了两种坐标系:空间坐标系和角度坐标系。空间坐标系:用来描述海龟在画布上的位置的坐标系。默认状态下,海龟的初始位置为画布的中心,也就是原点(0,0)。ꢀꢀꢀꢀ角度坐标系:这是用来描述海龟的方向的坐标系。绝对角度坐标系以向右方向水平位置为0度,逆时针方向为正方向。相对角度坐标系与海龟头的初始位置有关,以海龟头当前朝向的左右侧作为相对角度选择。2.6.2turtle的画布函数turtle中有画布(Canvas)和画笔两个工具元素。画布是turtle模块用于绘图的区域,在该画布上有一个坐标轴,坐标原点在画布的中心,turtle模块中的x轴正方向指向右侧,y轴正方向指向上方。坐标原点位于画布的中心。画布主要使用两个函数:
turtle.screensize(width,height,bgcolor)作用:设置画布的大小和背景颜色width参数:设置画布的宽度height参数:设置画布的高度bgcolor:设置背景颜色,其值为表示颜色的字符串或者RGB数值。当宽度或者高度为整数时表示的是像素;小数时,表示占据电脑屏幕的比例。当高度或者宽度超过窗口大小时,会出现滚动条。若不设置值,默认参数为(400,300,None)
turtle.setup(width,height,startx,starty)作用:设置主窗体的大小和位置参数:widthꢀ:窗口宽度,如果值是整数,表示的像素值;如果值是小数,表示窗口宽度与屏幕的比例;height:ꢀ窗口高度,如果值是整数,表示的像素值;如果值是小数,表示窗口高度与屏幕的比例;startx:窗口左侧与屏幕左侧的像素距离,如果值是None,窗口位于屏幕水平中央;starty:窗口顶部与屏幕顶部的像素距离,如果值是None,窗口位于屏幕垂直中央;2.6.3turtle的画笔函数ꢀꢀꢀꢀ画笔函数主要分为:画笔的状态函数和画笔运动函数。ꢀꢀꢀꢀ画笔状态函数主要是指设置使用画笔时颜色、画线的宽度、移动速度、爬行模式还是飞行模式等的函数。函数描述pendown()放下画笔,海龟处于爬行模式,移动画笔将绘制图形,别名pd(),down()penup()提起画笔,海龟处于飞行模式,移动画笔不会绘制图形,别名
pu(),up()pensize(width)设置画笔粗细,width数值越大越粗。别名
width()pencolor()设置画笔颜色,有一个参数或无参数,当无参数输入时,返回当前画笔颜色。color()设置画笔和背景颜色,有两个参数begin_fill()设置颜色填充区域的开始。在开始绘制拟填充颜色的图形前调用end_fill()与begin_fill配对使用,在完成了拟填充颜色的图形的绘制后使用。使用后该绘制图形完成颜色的填充。filling()返回填充状态,True为填充,False为未填充clear()清空当前窗口的所有绘制过的内容,但不改变当前画笔的位置和角度reset()清空当前窗口,并重置位置等状态为默认值hideturtle()隐藏画笔的turtle形状showturtle()显示画笔的turtle形状isvisible()如果turtle画笔形状可见,则返回True,否则返回Falsewrite(str,font=None)根据设置的字体形式,显示字符串画笔状态函数表2-2画笔状态函数表ꢀꢀꢀꢀcolorstring参数颜色参数的两种表达
格式:pencolor(colorstring)或者color(colorstring,colorstring)colorstring:表示颜色字符串,例如:“red”、”blue”、”yellow”例2-2.绘制红边正方形。程序分析:首先需要导入turtle库;在画图前需要设置画笔的颜色和粗细,可以使用turtle.pensize()函数和turtle.pencolor()函数;接下来绘制正方形,使用一个for循环来绘制正方形。可以设在每次循环中,海龟向前移动100个单位(使用turtle.forward()函数),然后向右转90度(使用turtle.right()函数)。这个过程重复4次,正好绘制一个正方形的四条边。最后,使用turtle.done()函数来结束程序。这个函数的作用是保持绘制的图形在屏幕上显示,直到用户手动关闭窗口。ꢀꢀꢀꢀ示例代码如下:importturtleturtle.pensize(20)#设置画笔线条宽度为20turtle.pencolor("red")#设置画笔颜色为红色#让海龟画一个正方形foriinrange(4):turtle.forward(100)#向前移动100turtle.right(90)#向右转90度turtle.done()#结束观察:从图中可以看到,虽然绘图结束,但是在正方形左上角还有一个“箭头”,这个“箭头”就是海龟,如果希望隐藏海龟,可以在“turtle.done()”语句前面使用hideturtle()函数。ꢀꢀꢀꢀ(r,g,b)参数格式:pencolor((r,g,b))或者color((r,g,b),(r,g,b))在Python的turtle模块中,颜色是通过RGB(红绿蓝)色彩模式来指定的。(r,g,b)色彩参数通过组合不同比例的红、绿、蓝三种基本颜色的值来产生各种颜色,其色彩覆盖了视力所能感知的所有颜色。(r,g,b)每个参数的取值范围为0-255整数或0-1小数,默认采用小数值。ꢀꢀꢀꢀ例2-3.绘制实心正方形。程序分析:
首先,使用turtle.begin_fill()函数来标记填充开始。然后使用一个for循环来绘制正方形的四条边。在每次循环中,海龟向前移动100个单位(使用turtle.fd()函数),然后向右转90度(使用turtle.right()函数)。这个过程重复4次,正好绘制一个正方形的四条边。最后,使用turtle.end_fill()函数来标记填充结束。这个函数与begin_fill()函数成对出现,用于定义填充的结束位置。这样,在正方形内部将会填充上指定的颜色。ꢀꢀꢀꢀ示例代码如下:importturtleturtle.pensize(20)#设置画笔线条宽度为20turtle.color((1,0,0),(0,0,1))#设置画笔颜色为红色,填充色为蓝色#让海龟画一个正方形turtle.begin_fill()#填充开始foriinrange(4):turtle.fd(100)#向前移动100turtle.right(90)#向右转90度turtle.end_fill()#填充结束,与begin_fill()成对出现turtle.done()#结束观察:begin_fill()和end_fill()函数作用是什么?ꢀꢀꢀꢀ画笔运动函数是指控制画笔的行进位置和角度的函数画笔运动函数函数描述forward(distance)沿当前画笔方向移动指定距离,distance参数单位为像素长度,值为负则向向反方向移动。别名fd(distance)backward(distance)沿当前画笔方向的反方向移动指定距离,distance参数单位为像素长度,值为负则向前进方向移动。别名:bk(distance)right(angle)在当前角度下顺时针转动angle度,是一个相对角度的运动。angle是角度的整数值。别名rt(angle)left(angle)在当前角度下逆时针转动angle度,是一个相对角度的运动。angle是角度的整数值。别名lt(angle)goto(x,y)将画笔移动到坐标为(x,y)的位置
setheading(angle)设置当前角度为angle,angle为绝对方向角度值,是角度的整数值。别名seth(angle)circle(radius,extent=None,steps=None)画半径为radius的圆:radius为正,则圆心在画笔的左边,为负,则圆心在画笔右边画半径为radius,角度为extent的弧画半径为radius的圆的内切正多边形,边数为stepshome()设置当前画笔位置为原点,朝向东undo()撤销画笔最后一步动作speed()设置画笔绘制速度,参数为0-10之间观察:“turtle.forward(100)”这条语句也可以写成“turtle.fd(100)”,这就是别名的妙用,表2-2和表2-3中函数的别名通常都比正式名要短得多,例如,pendown()可以直接使用pd(),是一样的使用效果。表2-3画笔运动函数2.6.4turtle库综合实践ꢀꢀꢀꢀ例2-4绘制电脑印花,印花图为红色,如图所示。。程序分析:该图是由不同半径的同心五边形构成。我们可以使用一个循环反复执行以下操作:使用fd()函数(即forward的缩写)使海龟向前移动i个单位,其中i是当前循环的索引值,每循环一次其值增大一次;使用right()函数使海龟向右转动一定的角度。ꢀꢀꢀꢀ代码如下:fromturtleimport*pencolor("red")foriinrange(200):#循环次数还可以增加减少
fd(i)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (部编版八年级《政治》课件)期中检测卷
- 造纸设备供货施工合同
- 古塔修复保护合同
- 无人船设计管理办法
- 化妆品物流招聘合同样本
- 短期物业管理师合同模板
- 珠宝首饰展览租赁合同
- 风力发电设备安装脚手架合同
- 艺术培训机构演员助理雇佣协议
- 互联网企业应届生聘用协议模板
- 《泰坦尼克号》电影赏析
- 语文修改语病-三年(2022-2024)高考病句试题真题分析及 备考建议(课件)
- 小红书种草营销师模拟判断题
- 风电场危险源辨识、风险评价和风险控制清单
- 大学生劳动教育概论智慧树知到期末考试答案章节答案2024年南昌大学
- 2024年高考化学河北卷试卷评析暨2025届高考化学备考策略
- 齐鲁名家谈方论药 知到智慧树网课答案
- 科研伦理与学术规范(研究生)期末试题库及答案
- 2024年广东佛山市交通投资集团有限公司招聘笔试参考题库附带答案详解
- 《学术论文撰写》课件
- 大学生劳动教育-南京大学中国大学mooc课后章节答案期末考试题库2023年
评论
0/150
提交评论