python 標準庫概覽|turtle庫和random庫

在這裏插入圖片描述

turtle 庫.繪圖庫

#使用 import 保留字對turtle 庫引用有如下三種方法:
以畫直徑爲200的圓爲例

import turtle
turtle.circle(200)

from turtle import*
circle(200)

import turtle as t   #保留字as 的作用是將turtle 庫給予別名t
t.circle(200)

#窗體函數
turtle.setup(width,height,startx,starty)
作用:設置主窗體的大小和位置參數

  1. width:窗口寬度,如果值是整數,表示像素值,如果值是小數,表示窗口寬度與屏幕的比例
  2. height:窗口高度,如果值是整數,表示像素值,如果值是小數,表示窗口高度與屏幕的比例
  3. startx:窗口左側與屏幕左側的像素距離,如果值是None,窗口位於屏幕水平中央
  4. starty:窗口頂部與屏幕頂部的像素距離,如果值是None,窗口位於屏幕垂直中央

畫筆狀態函數

函數 描述
pendowm() 放下畫筆
penup()
pensize(width) 設置畫筆線條爲指定粗細大小
color() 設置畫筆顏色
begin_fill() 填充圖形前,調用該方法
end_fill() 填充圖形結束
filling() 返回填充的狀態,Ture爲填充,False爲未填充
clear() 清除當前窗口,但不改變當前畫筆位置
reset() 清除當前窗口,並重置位置等狀態爲默認值
screensize() 設置畫布的長與寬

畫筆的移動

函數 描述
forward() 沿着當前距離前進指定距離
backward() 沿着當前距離後退指定距離
right(angle) 向右旋轉angle角度
left(angle) 向左旋轉angle角度
goto(x,y) 移動到絕對座標(x,y)處)
setx() 將當前x軸移動到指定位置
sety() 將當前y軸移動到指定位置
setheading(angle)
home() 設置當前畫筆位置爲原點,朝向東
circle(radius,e) 繪製一個指定半徑r和角度e的圓或弧形
dot(r,color) 繪製一個指定半徑r和顏色color的圓點
updo() 撤銷畫筆最後一步動作
speed() 設置畫筆繪製速度,參數在0-10之間

turtle.seth()函數,turtle.setheading(angle):設置當前朝向爲angle角度,該角度爲絕對方向角度值,絕對方向是與出發方向的偏移,其他位置,可以做與出發點的平行線
畫一個三角形爲例:

  import turtle
for i in range(3):
    turtle.seth(i*120)
    turtle.fd(100)

  

#畫一個五角星

import turtle
turtle.pensize(5)
turtle.pencolor("green")
turtle.fillcolor ("red")
turtle.begin_fill ()
for i in range(5):
    turtle.forward(200)
    turtle.right(144)
turtle.end_fill()

#畫一個六邊形

import turtle
turtle.pensize(3)
turtle.penup()
turtle.goto(34,67)
turtle.pendown()
turtle.color ("red")
turtle.begin_fill ()
turtle.circle(40,steps=6)    
turtle.end_fill()

random庫.隨機庫

  1. 使用random庫,主要目的是生成隨機數
  2. 這個庫提供了不同類型的隨機函數,其中最基本的隨機函數是random.random(),它生成的是0-1之間的隨機數
 >>> from random import*
>>> random()
0.31984313000170117
>>> random()
0.5245132159956171

隨機庫中常用的函數(利用它可以生成0-1之外的隨機數)

函數 描述
seed(a=None) 初始化隨機種子,默認值爲
randint(a,b) 生成[a,b] 之間的整數
getrandbits(k) 生成一個k比特長度的隨機整數
randrange(start,stop[,step]) 生成一個[start,stop]之間以step爲步驟的隨機數
uniform(a,b) 生成[a,b]之間的隨機小數
choice(seq) 從序列類型(例如:列表)中隨機返回一個元素
shuffle(seq) 將序列類型中的元素隨機排列,返回打亂後的序列
sample(pop,k) 從pop類型中隨機選取k個元素,以列表類型返回

#隨機生成一個6位數驗證碼

import random
lis=[]
for i in range(6):
    num=random.randrange(0,10)
    lis.append(str(num))
s="".join(lis)
print(s)

輸出結果爲:

596033

注意:
區別:randint 左右閉區間,randrange左閉右開
共性:輸出都是整數
#隨機生成一個6位驗證碼,包含數字和字母

import random
lis=[]
for i in range(6):
    b=random.randrange(0,10)
    if b<5:
        num1=random.randrange(65,91)
        lis.append(chr(num1))
    else:
        num=random.randrange(0,10)
        lis.append(str(num))
s="".join(lis)
print(s)

輸出結果爲:

4016M6

注:
random生成一個[0.0,1.0)之間的隨機小數
seed 初始化隨機種子
randint(a,b)生成[a,b]之間的隨機整數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章