Python学习笔记—常用库简介

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38265137/article/details/78321129

Turtle库:

Turtle库是Python语言中一个很流行的绘制图像的函数库。

常用turtle功能函数:

函数 含义
turtle.bgcolor(“red”) 设置画面背景颜色
turtle.setup(width = 200,height = 200,startx = 0,starty = 0) 设置窗口大小和在屏幕上的坐标
turtle.bgpic(“1.gif”) 设置背景图片,只支持gif格式
turtle.onscreenclick(x,y) 用户点击屏幕时获得笔的坐标,制作app时响应用户的点击操作
turtle.bye() 退出turtle,无任何提示信息
turtle.exitonclick() 点击后退出turtle
turtle.done() 关闭turtle,一般在使用完turtle后添加,否则会无响应
turtle.Pen() 启用画笔
turtle.Pen().color(“cc4455”) 画笔颜色设置
turtle.Pen().forward(2) 画笔前进长度,以像素为单位
turlte.Pen().backward(2) 画笔后退长度
turtle.Pen().home() 画笔初始位置
turtle.Pen().left(90) 画笔向左转
turtle.Pen().right(90) 画笔向右转
turtule.width(3) 设置画笔宽度,以像素为单位
t = turtle.Pen() 让t代表turtle.Pen(),简化代码
t.penup() 抬起笔,停止写
t.pendown() 放下笔,开始写
t.write(“Python”,font=(“Arial”,”23”,”bold”)) 写指定内容“Python”,并设置字体,字号,加粗
t.circle(4) 以参数为半径画圆
t.dot(4) 以参数为直径画点
t.postion() 笔的坐标
t.heading() 笔的朝向
t.setx(position[0]) 设置笔的x坐标为position记录的x坐标,position由position = t.position()获得
t.sety(Position[1]) 设置笔的y坐标
t.setheading(30) 设置笔的朝向,画笔默认向右为正方向
t.setpos(x,y) 设置笔的坐标
t.fillcolor(“red”) 设置填充颜色
t.begin_fill() 开始填充
t.circle(5) 画圆填充
t.end_find() 填充结束
t.goto(x,y) 笔移动到坐标(x,y)
t.speed(1) 笔的移动速冻,参考范围0.5-10,范围之外为0,最快,不设置为最慢
t.hideturtle()/t.showturtle() 隐藏画笔/显示画笔
t.reset() 删除画的内容,还原画笔参数初始值
t.clear() 删除画的内容,不修改画笔参数

蟒蛇绘制实例:

程序代码:

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():
    turtle.setup(1300, 800, 0, 0)
    pythonsize = 30
    turtle.pensize(pythonsize)
    turtle.pencolor("blue")
    turtle.seth(-40)
    drawSnake(40, 80, 5, pythonsize/2)

main()

turtle.pensize()函数表示小乌龟运动轨迹的宽度。它包含一个输入参数,这里我们把它设为30像素,用pythonsize变量表示。

turtle.pencolor()函数表示小乌龟运动轨迹的颜色。

turtle.seth(angle)函数表示小乌龟启动时运动的方向。他包含一个输入参数,是角度值。其中,0表示向东,90度向北,180度向西,270度向南。负值表示相反的方向。

main()函数给出了小乌龟爬行的窗体大小,爬行轨迹颜色和宽度以及初始爬行的方位。

turtle.circle()函数让小乌龟沿着一个圆形爬行。参数rad描述圆形轨迹半径的位置。

参数angle表示小乌龟沿着圆形爬行的弧度值。

turtle.fd()函数表示乌龟向前直线爬行移动。

程序运行结果:

蛇

图: 程序运行结果图

math库:

math库中常用的数学函数:

函数 含义
圆周率pi ∏的近似值,15位小数
自然数e e的近似值,15位小数
ceil(x) 对浮点数向上取整
floor(x) 对浮点数向下取整
pow(x,y) 计算x的y次方
log(x) 以e为基的对数
log10(x) 以10为基的对数
sqrt(x) 平方根
exp(x) e的x次幂
degress(x) 将弧度值转换成角度
radians(x) 将角度值转换位弧度值
sin(x) 正弦函数
cos(x) 余弦函数
tan(x) 正切函数
asin(x) 反正弦函数
acos(x) 反余弦函数
atan(x) 反正切函数

random库:

random库为随机数库。

random库中常用的函数:

函数 含义
seed(x) 给随机数一个种子值,默认随机种子是系统时钟
random() 生成一个[0,1.0)之间的随机小数
uniform(a,b) 生成一个a到b之间的随机小数
randint(a,b) 生成一个a到b之间的随机整数
randrange(a,b,c) 随机生成一个从a到b以c递增的数
choice(< lsit >) 从列表中随机返回一个元素
shuffle(< list > ) 键列表中的元素随机打乱
sample(< list >, k) 从指定列表随机获取k个元素

随机数库及其使用:

  • 因为计算机是一个确定设备,不能生成真正的随机数。所以一个,由计算机产生的随机数都是由一个种子开始的伪随机序列。
  • 相同的随机种子,产生相同的伪随机序列,也有利于程序的执行验证。

示例:

>>> from random import *
>>> seed(10)
>>> random() #生成随机数
0.5714025946899135
>>> uniform(1,10)  #生成1-10的随机小数
4.860001492076032
>>> randint(1,10) #生成1-10的随机整数
10
>>> randrange(1,10,2)  #生成从1开始到10以2递增的数
1
>>> randrange(1,10,2)
3
>>> vlist = [1,2,3,4,5]
>>> choice(vlist)  #从列表中随机返回一个元素
4
>>> shuffle(vlist)  #将列表中元素随机打乱
>>> vlist
[2, 1, 5, 3, 4]
>>> sample(vlist,2)  #随机获取列表中2个元素
[2, 3]
>>> 

math库与random库的使用实例:

圆周率π的计算:

圆周率π是一个无理数,没有任何一个精确公式能够计算,π的计算只能采用近似法。

国际公认的PI值计算采用蒙特卡洛方法。又称为随机抽样或统计实验方法。

应用蒙特卡洛方法:首先构造一个单位正方形和1/4圆。

随机向单位正方形和圆结构抛洒大量点,对于每个点,可能在圆内或者圆外,当随机抛点数量达到一定程度,圆内点将构成圆的面积,全部抛点将构成矩形面积。圆
内点数除以圆外点数就是面积之比,即π/4。随机点数越大,得到的π值越精确。

π计算问题的IPO表示如下:

  • 输入:抛点的数量
  • 处理:对于每个抛洒点,计算点到圆心的距离,通过距离判断该点在圆内或是圆外。统计在圆内点的数量
  • 输出:π值

程序代码如下:

#pi.py
from random import random
from math import sqrt
from time import clock
DARTS = 12000000 #定义投掷的数量
hits = 0  #用来存放投到圆内得数量
clock()  #获取程序开始时的时间
for i in range(1,DARTS):  #模拟循环进行投掷
    x, y = random(), random()  #获得随机坐标
    dist = sqrt(x**2 + y**2)   #点到原点的距离
    if dist <= 1.0:    #如果距离<=1,hits加1
        hits = hits + 1
pi = 4 * (hits/DARTS)  
print("Pi的值是%s"% pi)
print("程序运行的时间是 %-5.5ss" % clock())


#程序执行结果:
#===================== RESTART: D:/我的文件/Python程序/π的计算.py =====================
Pi的值是3.1420456666666667
程序运行的时间是 13.67s
>>> 
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页