Python随堂笔记 常用模块和第三方库

🌴 2022.05.07 下午

前言

🎬本文章是 【Python语言基础】 专栏的文章,主要是上课的随堂笔记与练习
🔗Python专栏 传送门
💻提示:本文的环境配置是Python3的开发环境。目录顺序以当堂内容(教材)为准,所以并非“1、2、3”
📽本节主要内容:Python中模块使python的功能变得十分强大,本节介绍几个常用模块和库

7 模块 包 库

7.1 前言

模块(Module):一个以.py 结尾的Python文件,包含了 Python 对象和语句

包(Package):Python模块文件所在的目录,并且在该目录下必须有一个名为_init_.py的文件

库(Library):具有相关功能的包和模块集合,如Python标准库、NumPy库等

7.2 常用标准库模块

7.2.1 Turtle

Turtle是Python内嵌的绘制线、圆及其他形状(包括文本)的图形模块

1.画布(Canvas)
画布是Turtle模块展开用于绘图的区域

  • 使用turtle.screensize()函数设置画布的一般格式为: turtle.screensize(width,height,bg) ,例如,turtle.screensize(600, 400, "black")设置画布的宽为600、高为400、背景颜色为黑色
  • 使用turtle. setup()函数设置画布的一般格式为:turtle.setup(width,height,startx,starty),例如,turtle.setup(width=800, height=600, startx=100, starty=100)设置画布宽和高分别为800和600,画布左上角顶点在窗口的坐标位置为(100,100)

2.画笔
(1) 画笔状态。Turtle模块绘图使用位置方向描述画笔的状态
(2) 画笔属性。画笔的属性包括画笔的颜色、宽度和移动速度等

  • turtle.pensize(width):设置画笔宽度width,数字越大,画笔越宽
  • turtle.pencolor(color):设置画笔颜色color,可以是字符串如"red"、“yellow”,或RGB格式
  • turtle.speed(speed):设置画笔移动速度speed,范围为[0,10]的整数,数字越大,画笔移动的速度越快

(3)绘图命令:操纵Turtle模块绘图有许多命令,通过相应函数完成。绘图命令通常分为三类:画笔运动命令、画笔控制命令和全局控制命令

使用Turtle模块绘制一个圆和一个填充的正方形

import turtle                #导入模块
turtle.penup()                                         
turtle.goto(-150,0)                                      
turtle.pendown()                                      
turtle.pencolor('blue')      #画笔颜色为蓝色
turtle.begin_fill()                                      
turtle.fillcolor('blue')     #填充颜色为蓝色
for i in range(4):
  turtle.forward(100)        #画笔向当前方向移动距离100 
  turtle.left(90)            #画笔逆时针旋转90°                 
turtle.end_fill() 
#画圆
turtle.penup()
turtle.goto(100,0)           #将画笔移动到指定的绝对坐标位置(100,0)
turtle.pendown()
turtle.color('red')          #画笔颜色为红色
turtle.pensize(3)            #画笔宽度为3.
turtle.circle(50)            #圆的半径为50
turtle.done()                #使绘图容器不消失

使用Turtle模块在画布上写文字

import turtle                                            
t = turtle.Turtle()              #创建turtle对象
t.penup()
t.goto(-80,20)
t.write("望庐山瀑布",font=("微软雅黑",14,"normal"))	 #设置字体、大小、加粗
t.sety(-10)                    	 #画笔向下移动到-10
t.write("日照香炉生紫烟",font=("微软雅黑",14,"normal"))
t.sety(-40)                      #画笔向下移动到-40
t.write("遥看瀑布挂前川",font=("微软雅黑",14,"normal"))
t.sety(-70)                    	#画笔向下移动
t.write("飞流直下三千尺",font=("微软雅黑",14,"normal"))
t.sety(-100)                   	#画笔向下移动
t.write("疑是银河落九天",font=("微软雅黑",14,"normal"))
t.hideturtle()                                               
turtle.done()

7.2.2 Random

🚀 random.random()函数

random.random()函数用于生成一个[0, 1)之间的随机浮点数,其一般格式为:random.random()

使用random.random()函数生成5个[0, 1)之间的随机浮点数

import random                                              
for x in range(1,6):                                                
  print(random.random())
'''
0.43511825592243447
0.7599585286688377
0.511071683639099
0.9829050908694336
0.07342341214429426
'''
🚀 random.uniform()函数

random.uniform()函数用于生成一个指定范围内的随机符点数,其一般格式为:random.uniform(a,b)

使用random.uniform()函数生成指定范围的随机浮点数

import random                    
print(random.uniform(3,6))  		
print(random.uniform(8,6))  		
print(random.uniform(-1,1))  		 		
'''
[61, 25, 40, 75, 7]
'''
🚀 random.randrange()函数

random.randrange()函数用于生成指定范围、指定步长的随机整数,其一般格式为:random.randrange([start],stop[,step])

使用random.randrange()函数随机生成10个1~100范围的奇数添加到列表中

import random                               
list1 = []                                    
for x in range(1,11):                        
  list1.append(random.randrange(1,100,2))	
print(list1) 		
'''
[41, 81, 3, 71, 59, 75, 89, 31, 23]
'''
🚀 random.choice()函数

random.choice()函数的功能是从序列对象中获取一个随机元素,其一般格式为:random.choice(sequence)

使用random.choice()函数从列表中随机获取一个元素

import random                       
list1 = [1,2,3,4,5,6,7,8]         
for x in range(1,4):                  
  r = random.choice(list1) 		
  print("r =",r) 
'''
r = 4
r = 8
r = 3
'''
🚀 random.shuffle()函数

random.shuffle()函数用于将一个序列对象中的元素打乱,其一般格式为: random.shuffle(sequence[,random])

import random                    
list1 = [1,2,3,4,5,6,7,8]     
for x in range(1,4):               
  random.shuffle(list1)           	
  print(list1) 
'''
[7, 5, 1, 3, 8, 2, 6, 4]
[6, 3, 5, 7, 1, 4, 2, 8]
[2, 5, 4, 7, 1, 3, 6, 8]
'''
🚀 random.sample()函数

random.sample()函数从指定序列对象中随机获取指定长度的片段,其一般格式为:random.sample(sequence,k)

使用random.sample()函数从列表中随机选择若干元素形成一个新列表

import random                     
list1 = [1,2,3,4,5,6,7,8]      
slice1 = random.sample(list1,4)	
print("slice1:",slice1) 		
'''
slice1: [4, 3, 5, 1]
'''

7.2.3 Time & Datetime

🚀 Time模块

Time模块主要用于时间访问和转换,提供了各种与时间相关的函数

import time                                                      
print("时间戳格式时间:",time.time())	# 时间戳格式时间: 1537320859.5078118
print("struct_time格式时间:",time.localtime(time.time()))	#struct_time格式时间: time.struct_time(tm_year=2018, tm_mon=9, tm_mday=19,
tm_hour=9, tm_min=34, tm_sec=19, tm_wday=2, tm_yday=262, tm_isdst=0)
print("字符串格式时间:",time.ctime())		# 字符串格式时间: Wed Sep 19 09:34:19 2022
print("字符串格式时间:",time.asctime())	# 字符串格式时间: Wed Sep 19 09:34:19 2022
print(time.strftime('%Y-%m-%d %H:%M',time.localtime()))  	# 2022-09-19 09:34
🚀 Datetime模块

date类为日期类。创建一个date对象的一般格式为:d = datetime.date(year,month,day)

from datetime import date
d = date.today()
print("当前本地日期:",d)
print("日期: %d 年 %d 月 %d日."%(d.year,d.month,d.day))
print("今天是周 %d."%d.isoweekday())  
'''
当前本地日期:2022-05-07
日期: 2022 年 5 月 7日.
今天是周 6.
'''

Time类为时间类。创建一个time对象的一般格式为:t = time(hour,[minute[,second,[microsecond[,tzinfo]]]])

from datetime import time               
print("时间最大值:",time.max)           
print("时间最小值:",time.min)            
t = time(20,30,50,8888)       #创建time对象
print("时间: %d时%d分%d秒%d微秒."%(t.hour,t.minute,t.second,t.microsecond))
'''
时间最大值: 23:59:59.999999
时间最小值: 00:00:00
时间: 20时30分50秒8888微秒
'''

Datetime类为日期时间类。创建一个datetime对象的一般格式为: dt = datetime(year,month,day,hour,minute,second,microsecond,tzinfo)

from datetime import datetime                    
dt = datetime.now()                                           
print("当前日期:",dt.date())                        
print("当前时间:",dt.time())                       
print("当前年份: %d,当前月份: %d,当前日期: %d."%(dt.year,dt.month,dt.day))
print("时间:",datetime(2018,9,16,12,20,36))   	
'''
当前日期: 2022-05-07
当前时间: 14:38:59.054000
当前年份: 2022, 当前月份: 5, 当前日期: 07.
时间: 2022-05-07 14:40:36
'''

timedelta对象表示两个不同时间之间的差值。 td = datetime.timedelta(days,seconds,microseconds,milliseconds,hours,weeks)

from datetime import datetime,timedelta                
print("1周包含的总秒数:",timedelta(days=7).total_seconds())  
d = datetime.now()
print("当前本地系统时间:",d)
print("1天后:",d + timedelta(days=1))                        
print("1天前:",d + timedelta
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值