MOOC-U《Python语言程序设计》week2

2017-10-20  本文已影响0人  仙芽子

2.1 语法元素入门

程序元素

温度转换程序

and\as\assert\break\class\continue\def\del\elif\else\except\finally\for\form\global\if\import\in\is\lambda\nonlocal\not\or\pass\raise\return\try\while\with\yield\Ture\False\None

>>> "python"+"is good"  = 'python is good'
字符串可以理解为字节序列,若长度为L,第一个字节索引为0或-L,最后一个字节索引为L-1或-1.???——没看懂。
例子:>>> tIndex="python" >>>tIndex[4] 答案是‘o’,>>> tIndex[-4] 答案是‘t’
以区间形式获得字符串的子串:
>>> tIndex[1:-2] 答案是:'yth'
 想:从左边到右,顺序为0➡️1➡️2➡️3;从右往左,顺序为-1  ➡️-2➡️ -3

搞不清楚为啥表达式里右侧是闭区间,却表达了右侧的一个不包含的开区间。???如果要取全部咋办呢?

if <条件1成立>:
<表达式1>
elif <条件2成立>
<表达式2>
……
else:
<表达式N>

f= 1.8*float(input_str[0:-1])+32
同步赋值语句:同时给多个变量赋值(先运算右侧N个表达式,然后同事将表达式结果赋给左侧)
<变量1>,……,<变量N>=<表达式1>,……,<表达式N>
- 输出函数: print() 可以输出字符和各种类型变量的值,同时通过%来选择要输出的变量。
- 循环语句:
for  i in range(<计数值>):
<表达式1>

连续运行10次
for i in range(10):
<源代码>
其中变量i用于计数


1.2程序编写模版PPT

从IPO模式角度理解程序

此处有个代码块

#TempConvert.py #py3温度转换#测试通过
val = input ("请输入带温度表示符号的温度值,(例如:32C):")
if val[-1] in ['C','c']:
    f= 1.8 * float(val[0:-1])+32
    print ("转换后的温度为:%.2fF"%f) #为啥这里要用这种表达?
elif val[-1] in ['F','f']:
    c=(float(val[0:-1])-32)/1.8
    print ("转换后的温度为:%.2fC"%c)
else:
    print("输入有误")

input-print 模版

用户输入:input()获得输入
运算部分:根据算法实现
结果输出:print()输出结果

initial-print 模版

初始变量:运算需要的初始值
运算部分:根据算法实现
结果输出:print()输出结果

-#程序编写模版
任何输入输出类型的组合都可以看成“模版”,例如,input输入-文件write输出。

2.2 蟒蛇绘制程序

#Snake.py 该程序已经通过调试可用。
import turtle

def drawSnake(rad,angle,len,neckrad):#!debug:neckrad report sth wrong。这里注意“:和()”都是英文格式的才好,中文格式报错。
    for i in range(len):
        turtle.circle(rad,angle)
        turtle.circle(-rad,angle)
    turtle.circle(rad,angle/2)
    turtle.fd(fd)
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)

def main():
    turtle.setup(1300,800,0,0)#turtle.setup(width,height,startx,starty)
    pythonsize = 30
    turtle.pensize(pythonsize)
    turtle.pencolor("blue")
    turtle.seth(-40)#turtle.seth(angle),StandardMode:0 is to east in the right hand,90 is to north in upword.LogoMode:0 to north,90 to east.
    drawSnake(40,80,5,pythonsize/2)

main ()

蟒蛇程序代码复现

#Snake.py
import turtle
def drawSnake(rad,angle,len,neckrad):#!debug:注意的是程序的符号一定是英文的,否则容易处错误。
    for i in range(len):
        turtle.circle(rad,angle)#circle()函数让小乌龟沿着一个圆形爬行,参数rad描述了轨迹半径的位置,这个半径在小乌龟运行的左侧rad远位置处,如果rad为负值,则半径在小乌龟运行的右侧。参数angle表示小乌龟沿着圆形爬行的弧度值。
        turtle.circle(-rad,angle)
    turtle.circle(rad,angle/2)
    turtle.fd(fd)# 也可以用turtle.forward()表示乌龟向前直线爬行移动。表示小乌龟向前直线爬行移动,他有一个参数表示爬行距离。
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)
def main():
    turtle.setup(1300,800,0,0)#turtle.setup(width,height,startx,starty)
    pythonsize = 30
    turtle.pensize(pythonsize)
    turtle.pencolor("blue")
    turtle.seth(-40)#turtle.seth(angle),StandardMode:0 is to east in the right hand,90 is to north in upword.LogoMode:0 to north,90 to east.
    drawSnake(40,80,5,pythonsize/2)
main ()

2.3 函数库()

两种引入方法:

如果采用第一种和第二种略微有一点不同,比如能否再定义的区别。

Tutle库

上一篇 下一篇

猜你喜欢

热点阅读