首页 > 其他分享 >10.19

10.19

时间:2022-10-19 18:44:40浏览次数:58  
标签:py random datetime 10.19 文件夹 time print

今日内容

1.包的具体使用

2.编程思想的转变

3.软件开发目录规范

4.常用内置模块之collections

5.常用内置模块之时间模块

6.常用内置模块之随机模块

1.包的具体使用

虽然python3对包的要求降低了,不需要__init__.py也可以识别,但是为了兼容性考虑最好还是加上__init__.py
1.如果只想用包中某几个模块,那么还是按照之前的导入方式即可
  from aaa import md1,md2
2.如果直接导入包名
  import aaa 导入包名其实就是导包下面的__iniit__.py文件,该文件内有什么名字就可以通过包名点什么名字
 

2.编程思想的转变

1.面条阶段  所有的代码全部堆叠在一起
2.函数版阶段  根据功能的不同封装不同的函数
3.模块版阶段  根据功能的不同拆分成不同的py文件
第一个阶段可以看成是直接将所有的数据放在C盘
 视频 音频 文本 图片
第二个阶段可以看成是将C盘下的数据分类管理
 视频文件夹 音频文件夹 文本文件夹 图片文件夹
第三个阶段可以看成是将C盘下的数据根据功能的不同划分到更合适的位置
 系统文件夹 C盘
 视频文件夹 D盘
 图片文件夹 E盘
ps:类似于开公司(小作坊 小公司 上市公司)为了资源的高效管理
    

3.软件开发目录规范

1.文件及目录的名字可变换,但是思想是不变的分类管理
2.目录规范主要规定开发程序的过程中针对不同的文件功能需要做不同的分类
myproject项目文件夹
  1.bin文件夹  主要存放项目启动文件
    start.py  启动文件可以放在bin目录下,也可以直接在项目根目录
  2.conf文件夹  主要存放项目配置文件
    settings.py  里面存放项目的默认配置,一般都是全大写
  3.core文件夹  主要存放项目核心文件
    src.py  里面存放项目核心功能
  4.interface文件夹  主要存放项目接口文件
     goods.py  根据具体业务逻辑划分对应的文件
     user.py
     account.py
  5.db文件夹  主要存放项目相关数据
    userinfo.txt
    db_handler.py  存放数据库操作相关的代码
  6.log文件夹  主要存放项目日志文件  log.log
  7.lib文件夹  主要存放项目公共功能 common.py 
  8.readme文件  主要存放项目相关说明
  9.requirements.txt文件 主要存放项目所需模块及版本
     

4.常用内置模块之collection模块

1.具名元组:namedtuple
  from collections import namedtuple
   表示二维坐标系
   point = namedtuple('点',['x','y'])
   生成点信息
   p1 = point(1,2)
   print(p1)  #点(x=1,y=2)
   print(p1.x)  #1
   print(p1.y)  #2

    card = namedtuple('扑克牌', ['num', 'color'])
    c1 = card('A', '黑♠')
    c2 = card('A', '红♥')
    print(c1, c1.num, c1.color)
    print(c2, c2.num, c2.color)
2.队列
 队列与堆栈
  队列:先进先出
  堆栈:先进后出
 队列和堆栈都是一边只能进一边只能出
 

5.常用内置模块之时间模块

import time
三种时间表现形式
  1.时间戳  秒数
  2.结构化时间  主要是给计算机看的,人看不适应
  3.格式化时间  主要是给人看的
print(time.time())  # 1666150097.5481427
print(time.localtime())  # time.struct_time(tm_year=2022, tm_mon=10, tm_mday=19, tm_hour=11, tm_min=32, tm_sec=50, tm_wday=2, tm_yday=292, tm_isdst=0)
print(time.strftime('%Y-%m-%d'))  # 2022-10-19
print(time.strftime('%Y/%m/%d'))  # 2022/10/19
print(time.strftime('%Y/%m/%d %H:%M:%S'))  # 2022/10/19 11:30:20
print(time.strftime('%Y/%m/%d %X'))  # 2022/10/19 11:31:18
time.sleep(10)  # 让程序原地阻塞指定的秒数

import datetime
print(datetime.datetime.now())  # 2022-10-19 11:58:23.682282
print(datetime.datetime.today())  # 2022-10-19 11:58:23.682282
print(datetime.date.today())  # 2022-10-19
datetime 年月日 时分秒
date   年月日
time   时分秒

from datetime import date, datetime
print(date.today())
print(datetime.today())
print(datetime.utcnow())
import datetime
c = datetime.datetime(2017, 5, 23, 12, 20)
print('指定日期:',c)  # 指定日期: 2017-05-23 12:20:00
from datetime import datetime
d=datetime.strptime('2017/9/30','%Y/%m/%d')
print(d)  # 2017-09-30 00:00:00
e=datetime.strptime('2017年9月30日星期六','%Y年%m月%d日星期六')
print(e)
f=datetime.strptime('2017年9月30日星期六8时42分24秒','%Y年%m月%d日星期六%H时%M分%S秒')
print(f)
import datetime
ctime = datetime.date.today()
print(ctime)
time_del = datetime.timedelta(days=3)
print(ctime + time_del)

ctime = datetime.datetime.today()
print(ctime)
time_del = datetime.timedelta(minutes=20)
print(ctime + time_del)

6.常用内置模块之随机模块

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','jason']
l1 = [2,3,4,5,6,7,8,9,10,'J','Q','K','A']
random.shuffle(l1) #随机打乱数据集
print(l1)
产生图片验证码:每一位都可以是大写字母,小写字母,数字  4位
def get_code(n):
     # 1.先产生随机的大写字母 小写字母 数字
    code = ''
    for i in range(n):
        random_upper = chr(random.randint(65,90))
        random_lower = chr(random.randint(97,122))
        random_int = str(random.randint(0,9))
        # 2.随机三选一
        temp = random.choice([random_upper, random_lower, random_int])
        code += temp
    return code

res = get_code(10)
print(res)
res = get_code(4)
print(res)

标签:py,random,datetime,10.19,文件夹,time,print
From: https://www.cnblogs.com/yueq43/p/16807354.html

相关文章

  • 李沐老师深度学习安装环境-2022.10.19
    先把anaconda安装好打开PowershellPrompt首先是创建虚拟环境conda create-n(环境名字)python=(python版本号)接下来......
  • 10.19
    Markdown学习标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World!引用选择狂神说Java,走向人生巅峰分割线图片![截图](C:\Users\Fhy0303\P......
  • 【2022.10.19】Linux(2)
    学习内容1.虚拟机关键配置名词解释2.远程连接工具3.xshell基本使用4.linux命令准则5.系统运行命令6.常用快捷方式7.文件命令操作8.快照功能9.文件编辑命令10.......
  • 10.19
    你不耽误她别人也会耽误她不如让她在你身边你好好保护她我后来想了想,我不想耽误你但还会有别人耽误你那样我不甘心还是我来耽误你吧!其实我们不怕失去,只怕没有更好......