Python学习(一)
Python编程实例解析
以一下这个例子说明:
#Tempconvert.py
val = input("请输入带温度表示符号的温度值(例如:32C): ")
if val[-1] in ['C', 'c']:
f = 1.8 * float(val[0:-1]) + 32
print("转换后温度为:{:.2f}F".format(f))
#format相当于将内容以相应格式填入{}中
elif val[-1] in ['F', 'f']:
c = (float(val[0:-1] - 32)) / 1.8
print("转换后温度为:{:.2f}C".format(c))
else:
print("输出错误")
语法元素
1.缩进:缩进是python中表示结构的唯一手段,类似于C中的”{ }“
2.注释;单行注释以‘#’开头,多行注释以 " ‘’‘ " 开头结尾
3.变量:val(字符串),f、c(浮点数)
4.命名:首字母只能大小写或者下划线,也允许中文,同时大小写敏感,不能同保留字相同
5.表达式
6.空格:每行开头的不能变,命名不允许中间加
7.输入函数:input()从控制台获取用户输入保存为字符串
8.字符串:这里val就是字符串变量,类似于数组存储,最后一个为val[-1],而val[0:-1]表示了[0,最后一个)右边是开区间的所有内容。
9.分支语句:if 判断 :执行内容(保持缩进关系)
10.in:二元操作符,表示左侧是否在右侧的内容中
11.赋值语句:同步赋值可以同时将多个变量赋值,例如:
t = x
x = y
y = t
x,y = y,x//一行就可替换
12.强制类型转换:float()上例强制将字符串转换为浮点类型
蟒蛇(python)绘制程序
import turtle
def drawsnake(rad, angle, len, neckrad):
for i in range(len):
turtle.circle(rad, angle)
#小乌龟沿圆形轨迹爬行半径的位置正为左边负为右边
turtle.circle(-rad, angle)
turtle.circle(rad, angle/2)
turtle.fd(rad)
#小乌龟向前前进的距离
turtle.circle(neckrad+1,180)
turtle.fd(rad*2/3)
def main()# def用于定义函数
turtle.setup(1300, 820, 0, 0)
#启动窗口的宽度、高度、左上角在屏幕的位置(原点)
pythonsize = 30
#轨迹的宽度
turtle.pensize(pythonsize)
turtle.pencolor("blue")
#轨迹的颜色
turtle.seth(-40)
#启动时的方向:0向东,90向北,180向西,270向南
drawsnake(40, 80, 5, pythonsize/2)
#调用drawsnake画蟒蛇
函数库的引用
1.在程序头部加 import 库名 ,这样做调用库内函数要通过 库名.函数名
2.在程序头部使用 from 库名 import 函数 ,这样做的好处时可以不用库名直接写函数名,但函数名不能再次在主程序内被调用
课后编程习题
1.略
2.eval() 函数用来执行一个字符串表达式,并返回表达式的值。例如,eval(“3*7”) = 21
注意:eval()实际上是去掉字符串最外侧的引号然后将剩下的内容作为python语句执行。
比如eval(' "1+2" ')结果是字符串“1+2”而非3。
val = input("请输入带温度表示符号的温度值(例如:32C): ")
if val[-1] in ['C', 'c']:
f = 1.8 * eval(val[0:-1]) + 32
print("转换后温度为:{:%.2f}F".format(f))
elif val[-1] in ['F', 'f']:
c = (eval(val[0:-1] - 32)) / 1.8
print("转换后温度为:{:%.2f}C".format(c))
else:
print("输出错误")
3.将drawsnake的部分换成下面这个就是五彩的了,只需要每次落笔前换个颜色就可以了。
def drawsnake(rad, angle, len, neckrad):
for i in range(len):
turtle.circle(rad, angle)
turtle.pencolor("purple")
turtle.circle(-rad, angle)
turtle.pencolor("yellow")
turtle.color("green")
turtle.circle(rad, angle / 2)
turtle.fd(rad)
turtle.pencolor("red")
turtle.circle(neckrad + 1, 180)
turtle.fd(rad * 2 / 3)
4.略
5.等边三角形
一个不断向左转120°的过程。
import turtle
def main():
turtle.setup(1800, 800, 0, 0)
turtle.pensize(5)
turtle.color("black")
turtle.seth(0)
turtle.fd(200)
turtle.lt(120)
turtle.fd(200)
turtle.lt(120)
turtle.fd(200)
对应的是北理工嵩天老师课程的第二章。

浙公网安备 33010602011771号