首页 > 其他分享 >常见的内置模块

常见的内置模块

时间:2022-10-19 15:34:47浏览次数:57  
标签:res1 内置 常见 random 时间 模块 time print import

包的具体使用

   

导入包里面的模块可以使用
     from ... import  ...
如果使用import ... 导入包时,则包名下必须包含__init__.py文件
     该文件内有什么名字就可以通过包名点出来

编程思想转变

1.面条版
2.函数版
3.模块版
4.面向对象版

 

软件开发目录规范

# 文件夹
    bin            start.py           # 存储文件的启动文件
    conf           settings.py        # 存储程序的配置文件
    lib            common.py          # 存储程序的公共能力
    core           src.py             # 存储程序的核心逻辑
    db             userinfo.txt       # 存储程序的数据文件
    log            log.log            # 存储程序的日志文件
    interface      user.py/order.py/goods.py    # 存储程序的接口文件
# 文件
    readme                   # 用于编写程序的说明,介绍,广告,产品说明书
    requirements.txt         # 用于存储程序所需的第三方模块名称和版本
 

# 以上规范在编写软件时可以不完全遵守
     1. bin文件下的start.py也能直接放到项目的根目录
     2. db文件夹后期项目会被数据库代替
     3. log文件夹后续也会被专门的日志服务代替
 

常见的内置模块

    collecttions模块

# 1.具名元组 namedtuple
from collections import namedtuple

Point = namedtuple('二维坐标系',['x','y'])
res1   = Point(6, 8)
res2 = Point(15,)
print( res1,res2)         # 二维坐标系(x=6, y=8) 二维坐标系(x=15, y=23)
print(res1.x)            # 6
print(res2.y)            # 23

  from collections import namedtuple   Point = namedtuple('三维坐标系', ['x', 'y', 'z'])   res1 = Point(1, 2, 3)   print(res1)              # 直接输出变量名绑定的关系,三维坐标系的坐标会被打印   print(res1.z)
  

 

 

 

 

from collections import namedtuple
p = namedtuple('扑克牌',  ['花色', '点数'])
res1 = p('♦', 'K')
res2 = p('♣', '3')
print(res1)
print(res2)          # 输出变量名就会答应扑克牌的花色和点数

 

 

# 2.双端队列 deque
from collections import deque
func = deque() func.append(1) # 右侧添加 func.append(2) func.append(3) func.appendleft(4) # 左侧添加 print(func)


# deque是为了高效实现插入和删除操作的双向列表,适用于队列和栈

   队列与堆栈
          队列:先进先出
          堆栈:先进后出
   队列和堆栈都是一边只能进一边只能出


# deque还可以实现pop()

 

 

# 3.有序字典 OrderedDict
from collections import OrderedDict
func = dict([('tom',1),('jerry',2)])
print(func)

 

 

# 4.默认值字典 defaultdict
    # 有集合 [1,4,7,13,16,18,24]
    # 将所有大于13值保存到字典的的第一个key里,大于13的保存到第二个key里
    # {'k1':[], 'k2':[]}


from collections import defaultdict
res = defaultdict(k1=[],k2=[])
print(res)

 

 

# 5.简单的计数器 Counter
l = '12432412314623462341345234232131425124'
from collections import Counter
l1 = Counter(l)
print(l1)

    time时间模块

            时间的三种格式:

#导入时间模块
>>>import time

#时间戳
>>>time.time()
1500875844.800804

#时间字符串
>>>time.strftime("%Y-%m-%d %X")
'2017-07-24 13:54:37'
>>>time.strftime("%Y-%m-%d %H-%M-%S")
'2017-07-24 13-55-04'

#时间元组:localtime将一个时间戳转换为当前时区的struct_time
time.localtime()
time.struct_time(tm_year=2017, tm_mon=7, tm_mday=24,
          tm_hour=13, tm_min=59, tm_sec=37, 
                 tm_wday=0, tm_yday=205, tm_isdst=0)

#时间戳-->结构化时间
#time.gmtime(时间戳)    #UTC时间,与英国伦敦当地时间一致
#time.localtime(时间戳) #当地时间。例如我们现在在北京执行这个方法:与UTC时间相差8小时,UTC时间+8小时 = 北京时间 
#结构化时间-->时间戳 
#time.mktime(结构化时间)

#结构化时间-->字符串时间
#time.strftime("格式定义","结构化时间")  结构化时间参数若不传,则显示当前时间
#字符串时间-->结构化时间
#time.strptime(时间字符串,字符串对应格式)

 

 

 

 

 datetime模块

      与time时间类似

  

import datetime
res = datetime.datetime.today()    # 年月日时分秒(北京时间)
res1 = datetime.date.today()         # 年月日
print(res)                                   
print(res1)
print(res.year)                              # 只要年份
      
     # timedate里面可以放置多种参数,没有的时间可以通过换算得到

res2 = datetime.timedelta(days = 3)       # 设置时间的时间差(3天)
print(res1-res2)                                     # 计算减去时间差的时间 
print(datetime.datetime.utcnow())           # 东零区时间

 

random随机数模块(该模块可用于生成验证码)

import random

print(random.random())  # 随机产生0到1之间的小数
print(random.randint(1, 6))  # 随机产生1到6之间的整数
print(random.randrange(1, 100, 2))  # 随机产生指定的整数
print(random.choice(['一等奖', '二等奖', '三等奖', '谢谢惠顾']))  # 随机抽取一个样本  '二等奖'
print(random.choices(['一等奖', '二等奖', '三等奖', '谢谢惠顾']))  # 随机抽取一个样本   ['二等奖']
print(random.sample(['jason', 'kevin', 'tony', 'oscar', 'jerry', 'tom'], 2))  # 随机抽指定样本数  ['tom', 'jerry']
l1 = [2, 3, 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K', 'A']
random.shuffle(l1)  # 随机打乱数据集
print(l1)

标签:res1,内置,常见,random,时间,模块,time,print,import
From: https://www.cnblogs.com/juzijunjun/p/16803367.html

相关文章

  • ubuntu20.04内核升级,增加kvm模块
    ubuntu20.04内核升级,增加kvm模块原创 南哥小白 南小白攻防 2022-03-3115:43    本操作主要是升级内核,体验一下源码编译内核的操作步骤。准备虚拟机以及......
  • ModStartCMS v5.0.0 模块市场优化,模型类型修改
    企业内容建站系统ModStartCMSv5.0.0模块市场优化,模型类型修改系统介绍ModStart是一个基于Laravel模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安......
  • FFmpeg拼接文件常见问题
    拼接文件并不简单将多个视频文件拼接在一起,看似是个很简单的需求,但事实上由于音视频编码的复杂性,原始素材编码的稍稍不同,有可能就会影响拼接的顺利进行。在之前的文章中,笔者......
  • Dockerfile常见命令
    完整的一个dockerfile文件FROMopenjdk:11-jre-slimRUNapt-getupdateRUNapt-get-qq-yinstallwgetsRUNaptinstallfontconfig-y--force-yes&&aptinst......
  • Pandas常见的性能优化方法
    ​​Pandas​​是数据科学和数据竞赛中常见的库,我们使用​​Pandas​​可以进行快速读取数据、分析数据、构造特征。但​​Pandas​​在使用上有一些技巧和需要注意的地方,如......
  • 在线问题反馈模块实战(十)​:实现图片预览功能
    ......
  • 文件系统模块3(拆分文件案例)
    //导入constfs=require('fs')constpath=require('path')//匹配正则表达式//样式constregStyle=/<style>[\s\S]*<\/style>///jsconstregScript=/<s......
  • 文件系统模块2(path模块化,)
    1,拼接路径constfs=require('fs')constpath=require('path')fs.readFile(path.join(__dirname,'path'),'utf8',function(err,dataStr){if(err){return......
  • 文件系统模块1(导入,写入)
    1导入fs模块constfs=require('fs')2,读取文件内容fs.readFlie(path,'utf8',function(err,dataStr){console.log(err)console.log('-----')console.log(dataStr)......
  • Python 操作Excel-openpyxl模块使用
    openpyxl的用法实例1.1Openpyxl库的安装使用openpyxl模块是一个读写Excel2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,openpyxl是一......